int numEditions = 11;
for (int i = 0; i < numEditions; i++)
createEdition("TestEdition #" + i, changeDate(Calendar.DAY_OF_YEAR, (0-i)), i);
int startIndex = 4;
EditionBrowser browser = PublicationController.getEditionPage(TEST_REPO, startIndex);
assertEquals("Wrong total number of editions", numEditions, browser.getTotalEditions());
assertFalse("No editions returned", browser.getEditions().isEmpty());
assertEquals("Wrong number of editions on page", PAGE_SIZE.intValue(), browser.getEditions().size());
assertEquals("Wrong start index", startIndex, browser.getStartIndex());
assertEquals("Wrong total pages", 3, browser.getTotalPages());
assertEquals("Wrong current page", 1, browser.getCurrentPage());
assertEquals("Wrong previous page size", 4, browser.getPreviousPageSize());
assertEquals("Wrong next page size", 2, browser.getNextPageSize());
int index = 0;
for (Iterator iter = browser.getEditions().iterator(); iter.hasNext(); index++)
{
PublicationVO found = (PublicationVO) iter.next();
PublicationVO expected = (PublicationVO) testEditions.get(startIndex + index);
assertEquals("Wrong previous page size", expected.getId(), found.getId());
}