This commit is contained in:
2025-06-20 17:31:13 +02:00
parent 9158e33854
commit a38116cca4
65 changed files with 2298 additions and 2298 deletions

View File

@@ -33,6 +33,23 @@ final class PageTest extends KernelTestCase
$this->prophet = new \Prophecy\Prophet();
}
/**
* @param int $number
* @param int $itemPerPage
* @param int $expectedItemPerPage
*
* @dataProvider generateGetFirstItemNumber
*/
public function testGetFirstItemNumber(
$number,
$itemPerPage,
$expectedItemPerPage,
) {
$page = $this->generatePage($number, $itemPerPage);
$this->assertEquals($expectedItemPerPage, $page->getFirstItemNumber());
}
/**
* return a set of element to testGetFirstItemNumber.
*
@@ -51,6 +68,23 @@ final class PageTest extends KernelTestCase
];
}
/**
* @param int $number
* @param int $itemPerPage
* @param int $expectedItemPerPage
*
* @dataProvider generateGetLastItemNumber
*/
public function testGetLastItemNumber(
$number,
$itemPerPage,
$expectedItemPerPage,
) {
$page = $this->generatePage($number, $itemPerPage);
$this->assertEquals($expectedItemPerPage, $page->getLastItemNumber());
}
/**
* return a set of element to testGetLastItemNumber.
*
@@ -69,40 +103,6 @@ final class PageTest extends KernelTestCase
];
}
/**
* @param int $number
* @param int $itemPerPage
* @param int $expectedItemPerPage
*
* @dataProvider generateGetFirstItemNumber
*/
public function testGetFirstItemNumber(
$number,
$itemPerPage,
$expectedItemPerPage,
) {
$page = $this->generatePage($number, $itemPerPage);
$this->assertEquals($expectedItemPerPage, $page->getFirstItemNumber());
}
/**
* @param int $number
* @param int $itemPerPage
* @param int $expectedItemPerPage
*
* @dataProvider generateGetLastItemNumber
*/
public function testGetLastItemNumber(
$number,
$itemPerPage,
$expectedItemPerPage,
) {
$page = $this->generatePage($number, $itemPerPage);
$this->assertEquals($expectedItemPerPage, $page->getLastItemNumber());
}
public function testPageNumber()
{
$page = $this->generatePage(1);

View File

@@ -34,73 +34,6 @@ final class PaginatorTest extends KernelTestCase
$this->prophet = new \Prophecy\Prophet();
}
/**
* generate an array with a set of page with :
* - total items ;
* - item per page ;
* - current page number ;
* - expected hasNextPage result.
*
* @return array
*/
public static function generateHasNextPage()
{
return [
[10, 10, 1, false],
[20, 10, 1, true],
[12, 10, 1, true],
[12, 10, 2, false],
];
}
public static function generateHasPage()
{
return [
[10, 10, -1, false],
[12, 10, 1, true],
[12, 10, 2, true],
[12, 10, 3, false],
];
}
/**
* generate an array with a set of page with :
* - total items ;
* - item per page ;
* - current page number ;
* - expected hasPreviousPage result.
*
* @return array
*/
public static function generateHasPreviousPage()
{
return [
[10, 10, 1, false],
[20, 10, 1, false],
[12, 10, 1, false],
[12, 10, 2, true],
];
}
/**
* generate a set of pages with different maxItem, itemPerPage, and
* expected page number.
*
* @return array
*/
public static function generatePageNumber()
{
return [
[12, 10, 2],
[20, 10, 2],
[21, 10, 3],
[19, 10, 2],
[1, 10, 1],
[0, 10, 1],
[10, 10, 1],
];
}
public function testGetPage()
{
$paginator = $this->generatePaginator(105, 10);
@@ -127,6 +60,25 @@ final class PaginatorTest extends KernelTestCase
$this->assertEquals($expectedHasNextPage, $paginator->hasNextPage());
}
/**
* generate an array with a set of page with :
* - total items ;
* - item per page ;
* - current page number ;
* - expected hasNextPage result.
*
* @return array
*/
public static function generateHasNextPage()
{
return [
[10, 10, 1, false],
[20, 10, 1, true],
[12, 10, 1, true],
[12, 10, 2, false],
];
}
/**
* test the HasPage function.
*
@@ -148,6 +100,16 @@ final class PaginatorTest extends KernelTestCase
$this->assertEquals($expectedHasPage, $paginator->hasPage($pageNumber));
}
public static function generateHasPage()
{
return [
[10, 10, -1, false],
[12, 10, 1, true],
[12, 10, 2, true],
[12, 10, 3, false],
];
}
/**
* @param int $totalItems
* @param int $itemPerPage
@@ -166,6 +128,25 @@ final class PaginatorTest extends KernelTestCase
$this->assertEquals($expectedHasNextPage, $paginator->hasPreviousPage());
}
/**
* generate an array with a set of page with :
* - total items ;
* - item per page ;
* - current page number ;
* - expected hasPreviousPage result.
*
* @return array
*/
public static function generateHasPreviousPage()
{
return [
[10, 10, 1, false],
[20, 10, 1, false],
[12, 10, 1, false],
[12, 10, 2, true],
];
}
/**
* Test that the countPages method (and his alias `count`) return
* valid results.
@@ -184,6 +165,25 @@ final class PaginatorTest extends KernelTestCase
$this->assertEquals($expectedPageNumber, \count($paginator));
}
/**
* generate a set of pages with different maxItem, itemPerPage, and
* expected page number.
*
* @return array
*/
public static function generatePageNumber()
{
return [
[12, 10, 2],
[20, 10, 2],
[21, 10, 3],
[19, 10, 2],
[1, 10, 1],
[0, 10, 1],
[10, 10, 1],
];
}
public function testPagesGenerator()
{
$paginator = $this->generatePaginator(105, 10);