diff --git a/src/test/java/com/avaje/tests/query/other/TestFindPagedList.java b/src/test/java/com/avaje/tests/query/other/TestFindPagedList.java index e6a1de7c1..367ed63a6 100644 --- a/src/test/java/com/avaje/tests/query/other/TestFindPagedList.java +++ b/src/test/java/com/avaje/tests/query/other/TestFindPagedList.java @@ -37,40 +37,55 @@ public class TestFindPagedList extends BaseTestCase { transaction.end(); } - PagedList list1 = Ebean.find(EBasic.class) + PagedList page1 = Ebean.find(EBasic.class) .where().like("name", "HelloB0B%") .findPagedList(0, 10); - list1.loadRowCount(); - List list = list1.getList(); - int totalRowCount = list1.getTotalRowCount(); - int totalPageCount = list1.getTotalPageCount(); + page1.loadRowCount(); + List list = page1.getList(); Assert.assertEquals(10, list.size()); - Assert.assertEquals(87, totalRowCount); - Assert.assertEquals(9, totalPageCount); + Assert.assertEquals(87, page1.getTotalRowCount()); + Assert.assertEquals(9, page1.getTotalPageCount()); + Assert.assertEquals(true, page1.hasNext()); - PagedList list2 = Ebean.find(EBasic.class) + + PagedList page1b = Ebean.find(EBasic.class) + .where().like("name", "HelloB0B%") + .findPagedList(0, 10); + + // Same as page1 but without initial loadRowCount() call + List list1B = page1b.getList(); + Assert.assertEquals(10, list1B.size()); + Assert.assertEquals(87, page1b.getTotalRowCount()); + Assert.assertEquals(9, page1b.getTotalPageCount()); + Assert.assertEquals(true, page1.hasNext()); + + + PagedList page2 = Ebean.find(EBasic.class) .where().like("name", "HelloB0B%") .findPagedList(4, 10); - list = list2.getList(); + list = page2.getList(); - Assert.assertEquals(10, list2.getList().size()); - Assert.assertEquals(87, list2.getTotalRowCount()); - Assert.assertEquals(9, list2.getTotalPageCount()); + Assert.assertEquals(10, page2.getList().size()); + Assert.assertEquals(87, page2.getTotalRowCount()); + Assert.assertEquals(9, page2.getTotalPageCount()); + Assert.assertEquals(true, page2.hasNext()); - PagedList list3 = Ebean.find(EBasic.class) + PagedList page3 = Ebean.find(EBasic.class) .where().like("name", "HelloB0B%") .findPagedList(8, 10); - Future rowCount = list3.getFutureRowCount(); - list = list3.getList(); + Future rowCount = page3.getFutureRowCount(); + list = page3.getList(); Assert.assertEquals(Integer.valueOf(87), rowCount.get()); - Assert.assertEquals(7, list3.getList().size()); - Assert.assertEquals(87, list3.getTotalRowCount()); - Assert.assertEquals(9, list3.getTotalPageCount()); + Assert.assertEquals(7, page3.getList().size()); + Assert.assertEquals(87, page3.getTotalRowCount()); + Assert.assertEquals(9, page3.getTotalPageCount()); + Assert.assertEquals(false, page3.hasNext()); + } }