Modified:
trunk/src/edu/hawaii/duedates/DueDates.java
trunk/src/edu/hawaii/duedates/webApp/ResultPage.html
trunk/src/edu/hawaii/duedates/webApp/ResultPage.java
trunk/src/edu/hawaii/duedates/webApp/TestIndex.java
trunk/src/edu/hawaii/duedates/webApp/TestResultPage.java
Log:
Issue 32, more test cases. problem with test resultpage
Modified: trunk/src/edu/hawaii/duedates/DueDates.java
==============================================================================
--- trunk/src/edu/hawaii/duedates/DueDates.java (original)
+++ trunk/src/edu/hawaii/duedates/DueDates.java Mon Dec 8 00:11:24 2008
@@ -150,9 +150,7 @@
}
return allItemsDue;
}
-// allItemsDue = itemSort(allItemsDue, this.sort.value);
- //allItemsDue = itemsWithin(allItemsDue, this.within.value);
- //return allItemsDue;
+
} // end getItems
Modified: trunk/src/edu/hawaii/duedates/webApp/ResultPage.html
==============================================================================
--- trunk/src/edu/hawaii/duedates/webApp/ResultPage.html (original)
+++ trunk/src/edu/hawaii/duedates/webApp/ResultPage.html Mon Dec 8
00:11:24 2008
@@ -52,9 +52,9 @@
<table id="itemTable" class="duedates">
<div wicket:id="resultTable">
<tr>
- <td width="150px"><div class="button"
wicket:id="library">Library</div></td>
- <td><div class="button" wicket:id="title">Book Title</div></td>
- <td width="70px"><div class="button" wicket:id="duedate">Due
Date</div></td>
+ <td width="150px"><a class="button" wicket:id="library"
href="#">Library</a></td>
+ <td><a class="button" wicket:id="title" href="#">Book
Title</a></td>
+ <td width="70px"><a class="button" wicket:id="duedate"
href="#">Due Date</a></td>
</tr>
<div id="item" wicket:id="itemTable">
Modified: trunk/src/edu/hawaii/duedates/webApp/ResultPage.java
==============================================================================
--- trunk/src/edu/hawaii/duedates/webApp/ResultPage.java (original)
+++ trunk/src/edu/hawaii/duedates/webApp/ResultPage.java Mon Dec 8
00:11:24 2008
@@ -88,7 +88,6 @@
}
};
- resultForm.add(uhContainer);
uhContainer.add(new Label("uhLabel", "University of Hawaii at Manoa
Library"));
uhContainer.add(new TextField("withinUh", new
PropertyModel(getSession(), "withinUh")));
@@ -124,6 +123,8 @@
}
});
+ resultForm.add(uhContainer);
+
WebMarkupContainer hslContainer = new
WebMarkupContainer("hslContainer") {
/** Support serialization. */
private static final long serialVersionUID = 1L;
@@ -135,7 +136,6 @@
}
};
- resultForm.add(hslContainer);
hslContainer.add(new Label("hslLabel", "Hawaii State Library"));
hslContainer.add(new TextField("withinHsl", new
PropertyModel(getSession(), "withinHsl")));
@@ -172,6 +172,8 @@
}
});
+ resultForm.add(hslContainer);
+
WebMarkupContainer wmc = new WebMarkupContainer("resultTable") {
/** For serialization. */
private static final long serialVersionUID = 1L;
@@ -182,7 +184,6 @@
return !getDueDatesSession().getList().isEmpty();
}
};
- resultForm.add(wmc);
//Add link to library tab
wmc.add(new Link("library") {
@@ -193,7 +194,7 @@
public void onClick() {
getDueDatesSession().setList(getDueDates().itemSort(getDueDatesSession().getList(),
"library"));
- //setResponsePage(ResultPage.class);
+ setResponsePage(ResultPage.class);
}
});
@@ -205,7 +206,7 @@
public void onClick() {
getDueDatesSession().setList(getDueDates().itemSort(getDueDatesSession().getList(),
"duedate"));
-// setResponsePage(ResultPage.class);
+ setResponsePage(ResultPage.class);
}
});
@@ -217,6 +218,7 @@
public void onClick() {
getDueDatesSession().setList(getDueDates().itemSort(getDueDatesSession().getList(),
"title"));
+ setResponsePage(ResultPage.class);
}
});
@@ -241,5 +243,6 @@
};
// Add the dataview to the ResultPage.
wmc.add(dataView);
+ resultForm.add(wmc);
}
}
Modified: trunk/src/edu/hawaii/duedates/webApp/TestIndex.java
==============================================================================
--- trunk/src/edu/hawaii/duedates/webApp/TestIndex.java (original)
+++ trunk/src/edu/hawaii/duedates/webApp/TestIndex.java Mon Dec 8 00:11:24
2008
@@ -67,4 +67,14 @@
formTester2.submit("Login");
tester.assertRenderedPage(ResultPage.class);
}
+
+ /**
+ * Tests the basic DueDatesApplication constructor.
+ */
+ @Test
+ public void testBasicApplication() {
+ WicketTester tester = new WicketTester(new DueDatesApplication());
+ tester.startPage(Index.class);
+ tester.assertRenderedPage(Index.class);
+ }
}
Modified: trunk/src/edu/hawaii/duedates/webApp/TestResultPage.java
==============================================================================
--- trunk/src/edu/hawaii/duedates/webApp/TestResultPage.java (original)
+++ trunk/src/edu/hawaii/duedates/webApp/TestResultPage.java Mon Dec 8
00:11:24 2008
@@ -1,10 +1,16 @@
package edu.hawaii.duedates.webApp;
+import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertTrue;
import org.apache.wicket.markup.html.link.Link;
+import org.apache.wicket.util.tester.FormTester;
import org.apache.wicket.util.tester.WicketTester;
+import org.junit.Before;
import org.junit.Test;
+import edu.hawaii.duedates.configuration.DueDatesConfiguration;
+import edu.hawaii.duedates.configuration.User;
/**
* This is a test class for ResultPage.java.
@@ -14,18 +20,45 @@
*/
public class TestResultPage {
+ private DueDatesConfiguration config;
+
+ /**
+ * Sets up a mock DueDatesConfiguration object for use in
+ * tests.
+ */
+ @Before
+ public void setUp() {
+ this.config = new DueDatesConfiguration();
+ User testUser = new User("Test", "tes...@hawaii.edu", "password");
+
+ // login with someone who has 2 books out
+ String login = System.getenv("DUEDATES_TESTUSER2_ID");
+ String password = System.getenv("DUEDATES_TESTUSER2_LASTNAME");
+ testUser.setUhManoa("-uhm " + login + " " + password);
+ this.config.addUser(testUser);
+ this.config.setSmtpServer("mail.hawaii.edu");
+ }
+
/**
* Testing the basic functionality of the Result Page class.
*/
@Test
public void testResultPage() {
- //final String LIBRARY = "Library";
- //final String TITLE = "Title";
- //final String DUEDATE = "Duedate";
+
+ final String RESULT_FORM = "resultForm";
+ final String LIBRARY = "Library";
+ final String TITLE = "Title";
+ final String DUEDATE = "Duedate";
// Start up the WicketTester and check that the startpage renders.
- WicketTester tester = new WicketTester(new DueDatesApplication());
- tester.startPage(ResultPage.class);
+ WicketTester tester = new WicketTester(new
DueDatesApplication(config));
+ tester.startPage(Index.class);
+
+ // Have to run through login to correctly create user in session
+ FormTester formTester = tester.newFormTester("loginForm");
+ formTester.setValue("LoginEmail", "tes...@hawaii.edu");
+ formTester.setValue("LoginPassword", "password");
+ formTester.submit("Login");
tester.assertRenderedPage(ResultPage.class);
// Now check that the links all exist.
@@ -42,14 +75,32 @@
assertNotNull("Testing wicket:id Alerts found",
tester.getTagByWicketId("Alerts"));
assertNotNull("Testing wicket:id Logout found",
tester.getTagByWicketId("Logout"));
- // The following line is useful for seeing what's on the page.
- //tester.debugComponentTrees();
- // Test that the word "Hawaii" appears somewhere on this page.
- //tester.assertContains("Hawaii");
- // Test that "University" appears somewhere on this page.
- //tester.assertContains("University");
+
+ // Test that the update hsl link is not there
+ assertFalse("no hsl info",
tester.getTagByWicketId(RESULT_FORM).getMarkup().
+ contains("hslContainer"));
+ // Test form input and update button
+ FormTester formTester2 = tester.newFormTester(RESULT_FORM);
+ formTester2.setValue("withinUh", "0");
+ formTester2.submit("updateUh");
+
+ // Test that data output shows up
+ assertTrue("items exist",
tester.getTagByWicketId(RESULT_FORM).getMarkup().
+ contains("itemTable"));
+ tester.assertRenderedPage(ResultPage.class);
+ tester.dumpPage();
+ //tester.debugComponentTrees();
+ // Test the update links
+ tester.clickLink("library");
+ tester.assertRenderedPage(ResultPage.class);
+
+ // Tests the alerts and logout link
+ tester.clickLink("Alerts");
+ tester.assertRenderedPage(AlertsPage.class);
+ tester.clickLink("Logout");
+ tester.assertRenderedPage(Index.class);
}
}