package blog.blogEntry; import java.util.*; import org.junit.*; import static org.junit.Assert.*; import blog.common.*; import static blog.blogEntry.BlogEntryListService.MAX_RESULTS; public final class BlogEntryListServiceTest { @TestData BlogEntryTestData blogEntryData; @ObjectUnderTest BlogEntryListService blogEntryListService; @Test public void getResultList() { BlogEntry blogEntry = blogEntryData.buildAndSave(); List<BlogEntry> resultList = blogEntryListService.getResultList(); assertTrue(resultList.contains(blogEntry)); } @Test public void pagination() { createBlogEntries(MAX_RESULTS + 1); assertEquals(0, blogEntryListService.getFirstResult()); assertEquals(5, blogEntryListService.getNextFirstResult()); assertEquals(0, blogEntryListService.getPreviousFirstResult()); assertTrue(blogEntryListService.isNextExists()); assertFalse(blogEntryListService.isPreviousExists()); blogEntryListService.setFirstResult(blogEntryListService.getNextFirstResult()); assertEquals(5, blogEntryListService.getFirstResult()); assertEquals(10, blogEntryListService.getNextFirstResult()); assertEquals(0, blogEntryListService.getPreviousFirstResult()); assertFalse(blogEntryListService.isNextExists()); assertTrue(blogEntryListService.isPreviousExists()); } void createBlogEntries(int quantity) { for (int i = 0; i < quantity; i++) { blogEntryData.buildAndSave(); } } @Test public void findEntriesUpToMaximumQuantity() { createBlogEntries(MAX_RESULTS + 1); List<BlogEntry> found = blogEntryListService.getResultList(); assertEquals(MAX_RESULTS, found.size()); } @Test public void previousFirstResult() { blogEntryListService.setFirstResult(10); assertEquals(15, blogEntryListService.getNextFirstResult()); assertEquals(5, blogEntryListService.getPreviousFirstResult()); } }