Package org.appfuse.webapp.pages

Source Code of org.appfuse.webapp.pages.UserEditTest

package org.appfuse.webapp.pages;

import org.apache.tapestry5.dom.Element;
import org.apache.tapestry5.dom.Node;
import org.junit.Test;
import org.subethamail.wiser.Wiser;

import java.util.List;
import java.util.Locale;
import java.util.ResourceBundle;

import static org.junit.Assert.*;

public class UserEditTest extends BasePageTestCase {

    @Test
    public void testCancel() throws Exception {
        doc = tester.renderPage("admin/UserList");
        Element table = doc.getElementById("userList");
        List<Node> rows = table.find("tbody").getChildren();
        String username = "";

        username = ((Element) rows.get(0)).find("td/a").getChildMarkup().trim();

        Element idLink = table.getElementById("user-" + username);
        doc = tester.clickLink(idLink);


        Element cancelButton = doc.getElementById("cancel");

        doc = tester.clickLink(cancelButton);

        // force locale=en (APF-1324)
        ResourceBundle rb = ResourceBundle.getBundle(MESSAGES, new Locale("en"));

        assertTrue(doc.toString().contains(rb.getString("userList.title")));
    }

    @Test
    public void testSave() throws Exception {

        doc = tester.renderPage("admin/UserList");
        Element addLink = doc.getElementById("add");

        doc = tester.clickLink(addLink);

        Element form = doc.getElementById("form");
        assertNotNull(form);

        fieldValues.put("username", "tapestry");
        fieldValues.put("password", "isfun");
        fieldValues.put("confirmPassword", "isfun");
        fieldValues.put("passwordHint", "funstuff");
        fieldValues.put("firstName", "Tapestry");
        fieldValues.put("lastName", "5");
        fieldValues.put("email", "tapestry@appfuse.org");
        fieldValues.put("website", "http://tapestry.apache.org");
        fieldValues.put("city", "Portland");
        fieldValues.put("state", "OR");
        fieldValues.put("postalCode", "97303");
        fieldValues.put("country", "US");

        // start SMTP Server
        Wiser wiser = new Wiser();
        wiser.setPort(getSmtpPort());
        wiser.start();

        doc = tester.submitForm(form, fieldValues);

        Element errors = doc.getElementById("errorMessages");

        if (errors != null) {
            log.error(errors);
        }

        assertNull(doc.getElementById("errorMessages"));

        // verify an account information e-mail was sent
        assertEquals(1, wiser.getMessages().size());
        wiser.stop();

        //Element successMessages = doc.getElementById("successMessages");
        //assertNotNull(successMessages);
        //assertTrue(successMessages.toString().contains("added successfully"));
        assertTrue(doc.toString().contains("added successfully"));
        Element table = doc.getElementById("userList");
        assertTrue(table.toString().contains("tapestry"));
    }

    @Test
    public void testRemove() throws Exception {
        doc = tester.renderPage("admin/UserList");
        Element table = doc.getElementById("userList");
        List<Node> rows = table.find("tbody").getChildren();
        String username = "";

        username = ((Element) rows.get(1)).find("td/a").getChildMarkup().trim();

        Element idLink = table.getElementById("user-" + username);
        doc = tester.clickLink(idLink);

        Element deleteButton = doc.getElementById("delete");

        doc = tester.clickLink(deleteButton);
        assertTrue(doc.toString().contains("deleted successfully"));
    }
}
TOP

Related Classes of org.appfuse.webapp.pages.UserEditTest

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.