Package org.javaee7.jsf.http.get

Source Code of org.javaee7.jsf.http.get.UserTest

package org.javaee7.jsf.http.get;

import com.gargoylesoftware.htmlunit.WebClient;
import com.gargoylesoftware.htmlunit.html.HtmlAnchor;
import com.gargoylesoftware.htmlunit.html.HtmlButtonInput;
import com.gargoylesoftware.htmlunit.html.HtmlElement;
import com.gargoylesoftware.htmlunit.html.HtmlPage;
import java.io.File;
import java.io.IOException;
import java.net.URL;
import org.jboss.arquillian.container.test.api.Deployment;
import org.jboss.arquillian.junit.Arquillian;
import org.jboss.arquillian.test.api.ArquillianResource;
import org.jboss.shrinkwrap.api.ShrinkWrap;
import org.jboss.shrinkwrap.api.spec.WebArchive;
import org.junit.Before;
import org.junit.Test;
import static org.junit.Assert.*;
import org.junit.runner.RunWith;

/**
* @author Arun Gupta
*/
@RunWith(Arquillian.class)
public class UserTest {

    @ArquillianResource
    private URL base;
   
    WebClient webClient;

    private static final String WEBAPP_SRC = "src/main/webapp";
    HtmlPage page;

    @Deployment(testable = false)
    public static WebArchive createDeployment() {
        return ShrinkWrap.create(WebArchive.class).
                addClass(User.class)
                .addAsWebResource(new File(WEBAPP_SRC, "index.xhtml"))
                .addAsWebResource(new File(WEBAPP_SRC, "index2.xhtml"))
                .addAsWebResource(new File(WEBAPP_SRC, "login.xhtml"))
                .addAsWebInfResource(new File(WEBAPP_SRC + "/WEB-INF", "web.xml"))
                .addAsWebInfResource(new File(WEBAPP_SRC + "/WEB-INF", "beans.xml"));
    }

    @Before
    public void setup() throws IOException {
        webClient = new WebClient();
        page = webClient.getPage(base + "/faces/index.xhtml");
    }

    @Test
    public void testLink() throws IOException {
        HtmlAnchor anchor = (HtmlAnchor)page.getElementById("link1");
        assertTrue(anchor.getHrefAttribute().contains("faces/login.xhtml"));
        assertEquals("Login1", anchor.asText());
       
        HtmlPage output = anchor.click();
        assertEquals("HTTP GET (Login)", output.getTitleText());
    }

    @Test
    public void testLinkWithParam() throws IOException {
        HtmlAnchor anchor = (HtmlAnchor)page.getElementById("link2");
        assertTrue(anchor.getHrefAttribute().contains("faces/login.xhtml"));
        assertTrue(anchor.getHrefAttribute().contains("?name=Jack"));
        assertEquals("Login2", anchor.asText());
       
        HtmlPage output = anchor.click();
        assertEquals("HTTP GET (Login)", output.getTitleText());
    }
       
    @Test
    public void testLinkWithPreProcessParams() {
        HtmlAnchor anchor = (HtmlAnchor)page.getElementById("link3");
        assertEquals("Login3", anchor.asText());
        assertTrue(anchor.getHrefAttribute().contains("faces/index2.xhtml"));
        assertTrue(anchor.getHrefAttribute().contains("?name=Jack"));
    }
       
    @Test
    public void testButton() throws IOException {
        HtmlButtonInput button = (HtmlButtonInput)page.getElementById("button1");
        assertEquals("Login4", button.asText());
       
        HtmlPage output = button.click();
        assertEquals("HTTP GET (Login)", output.getTitleText());
    }
}
TOP

Related Classes of org.javaee7.jsf.http.get.UserTest

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.