| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158 |
- <?php
- /**
- * Test: Nette\Utils\Paginator Base:0 Page:3 test.
- */
- declare(strict_types=1);
- use Nette\Utils\Paginator;
- use Tester\Assert;
- require __DIR__ . '/../bootstrap.php';
- test('', function () {
- $paginator = new Paginator;
- $paginator->itemCount = 7;
- $paginator->itemsPerPage = 6;
- $paginator->base = 0;
- $paginator->page = 3;
- Assert::same(1, $paginator->page);
- Assert::same(2, $paginator->pageCount);
- Assert::same(0, $paginator->firstPage);
- Assert::same(1, $paginator->lastPage);
- Assert::same(7, $paginator->firstItemOnPage);
- Assert::same(7, $paginator->lastItemOnPage);
- Assert::same(6, $paginator->offset);
- Assert::same(0, $paginator->countdownOffset);
- Assert::same(1, $paginator->length);
- });
- test('', function () {
- $paginator = new Paginator;
- $paginator->itemCount = 7;
- $paginator->itemsPerPage = 6;
- $paginator->base = 0;
- $paginator->page = -1;
- Assert::same(0, $paginator->page);
- Assert::same(1, $paginator->firstItemOnPage);
- Assert::same(6, $paginator->lastItemOnPage);
- Assert::same(0, $paginator->offset);
- Assert::same(1, $paginator->countdownOffset);
- Assert::same(6, $paginator->length);
- });
- test('', function () {
- $paginator = new Paginator;
- $paginator->itemCount = 7;
- $paginator->itemsPerPage = 7;
- $paginator->base = 0;
- $paginator->page = -1;
- Assert::same(0, $paginator->page);
- Assert::same(1, $paginator->pageCount);
- Assert::same(0, $paginator->firstPage);
- Assert::same(0, $paginator->lastPage);
- Assert::same(1, $paginator->firstItemOnPage);
- Assert::same(7, $paginator->lastItemOnPage);
- Assert::same(0, $paginator->offset);
- Assert::same(0, $paginator->countdownOffset);
- Assert::same(7, $paginator->length);
- });
- test('', function () {
- $paginator = new Paginator;
- $paginator->itemCount = -1;
- $paginator->itemsPerPage = 7;
- $paginator->base = 0;
- $paginator->page = -1;
- Assert::same(0, $paginator->page);
- Assert::same(0, $paginator->pageCount);
- Assert::same(0, $paginator->firstPage);
- Assert::same(0, $paginator->lastPage);
- Assert::same(0, $paginator->firstItemOnPage);
- Assert::same(0, $paginator->lastItemOnPage);
- Assert::same(0, $paginator->offset);
- Assert::same(0, $paginator->countdownOffset);
- Assert::same(0, $paginator->length);
- });
- test('', function () {
- $paginator = new Paginator;
- $paginator->itemCount = 7;
- $paginator->itemsPerPage = 6;
- $paginator->base = 1;
- $paginator->page = 3;
- Assert::same(2, $paginator->page);
- Assert::same(2, $paginator->pageCount);
- Assert::same(1, $paginator->firstPage);
- Assert::same(2, $paginator->lastPage);
- Assert::same(7, $paginator->firstItemOnPage);
- Assert::same(7, $paginator->lastItemOnPage);
- Assert::same(6, $paginator->offset);
- Assert::same(0, $paginator->countdownOffset);
- Assert::same(1, $paginator->length);
- });
- test('', function () {
- $paginator = new Paginator;
- // ItemCount: 0
- $paginator->setItemCount(0);
- Assert::true($paginator->isFirst());
- Assert::true($paginator->isLast());
- Assert::same(0, $paginator->firstItemOnPage);
- Assert::same(0, $paginator->lastItemOnPage);
- // ItemCount: 1
- $paginator->setItemCount(1);
- Assert::true($paginator->isFirst());
- Assert::true($paginator->isLast());
- Assert::same(1, $paginator->firstItemOnPage);
- Assert::same(1, $paginator->lastItemOnPage);
- // ItemCount: 2
- $paginator->setItemCount(2);
- Assert::true($paginator->isFirst());
- Assert::false($paginator->isLast());
- Assert::same(1, $paginator->firstItemOnPage);
- Assert::same(1, $paginator->lastItemOnPage);
- // Page 2
- $paginator->setPage(2);
- Assert::false($paginator->isFirst());
- Assert::true($paginator->isLast());
- Assert::same(2, $paginator->firstItemOnPage);
- Assert::same(2, $paginator->lastItemOnPage);
- });
- test('', function () {
- $paginator = new Paginator;
- $paginator->itemsPerPage = 6;
- $paginator->base = 0;
- $paginator->page = 3;
- Assert::same(3, $paginator->page);
- Assert::null($paginator->pageCount);
- Assert::same(0, $paginator->firstPage);
- Assert::null($paginator->lastPage);
- Assert::same(19, $paginator->firstItemOnPage);
- Assert::same(24, $paginator->lastItemOnPage);
- Assert::same(18, $paginator->offset);
- Assert::null($paginator->countdownOffset);
- Assert::same(6, $paginator->length);
- });
|