summaryrefslogtreecommitdiffstats
path: root/test/htmlunit/JCatalogTest.java
diff options
context:
space:
mode:
Diffstat (limited to 'test/htmlunit/JCatalogTest.java')
-rw-r--r--test/htmlunit/JCatalogTest.java65
1 files changed, 65 insertions, 0 deletions
diff --git a/test/htmlunit/JCatalogTest.java b/test/htmlunit/JCatalogTest.java
new file mode 100644
index 0000000..152109d
--- /dev/null
+++ b/test/htmlunit/JCatalogTest.java
@@ -0,0 +1,65 @@
+package htmlunit;
+
+import static net.sourceforge.jwebunit.junit.JWebUnit.assertLinkNotPresent;
+import static net.sourceforge.jwebunit.junit.JWebUnit.assertLinkPresent;
+import static net.sourceforge.jwebunit.junit.JWebUnit.assertTextInElement;
+import static net.sourceforge.jwebunit.junit.JWebUnit.assertTitleEquals;
+import static net.sourceforge.jwebunit.junit.JWebUnit.beginAt;
+import static net.sourceforge.jwebunit.junit.JWebUnit.clickLink;
+import static net.sourceforge.jwebunit.junit.JWebUnit.setBaseUrl;
+import static net.sourceforge.jwebunit.junit.JWebUnit.setTextField;
+import static net.sourceforge.jwebunit.junit.JWebUnit.submit;
+
+import org.junit.Before;
+import org.junit.Test;
+
+public class JCatalogTest
+{
+ @Before
+ public void prepare()
+ {
+ setBaseUrl("http://localhost:8080/JCatalog/pages");
+ }
+
+ @Test
+ public void testWelcomePage()
+ {
+ beginAt("home.jsf");
+ assertTitleEquals("JCatalog Application");
+ assertTextInElement("content",
+ "Welcome to the JCatalog Demo Application");
+ }
+
+ @Test
+ public void testLinkToLoginPage()
+ {
+ beginAt("home.jsf");
+ clickLink("navcontainer:loginLink");
+ assertTitleEquals("JCatalog Login");
+ }
+
+ @Test
+ public void testLoginPage()
+ {
+ testLinkToLoginPage();
+
+ setTextField("loginForm:username", "admin");
+ setTextField("loginForm:password", "masterkey");
+ submit();
+ assertTitleEquals("JCatalog Welcome");
+ }
+
+ @Test
+ public void testLogout()
+ {
+ testLoginPage();
+
+ assertLinkNotPresent("navcontainer:loginLink");
+
+ assertLinkPresent("navcontainer:logoutLink");
+ clickLink("navcontainer:logoutLink");
+
+ assertLinkPresent("navcontainer:loginLink");
+ assertLinkNotPresent("navcontainer:logoutLink");
+ }
+}