Phpstan Bleeding Edge Part 2 of Many

This will be the biggest of these changes. It takes care of all of the remaining problems in tests. I will handle the problems in src more slowly.
This commit is contained in:
oleibman
2025-02-15 19:18:39 -08:00
parent cd7386f912
commit ec773bbed9
60 changed files with 132 additions and 678 deletions
@@ -23,6 +23,12 @@ class ColumnCellIteratorTest extends TestCase
[160, null, 360, null, 560],
];
// Phpstan does not think RowCellIterator can return null
private static function isCellNull(?Cell $item): bool
{
return $item === null;
}
private static function getPopulatedSheet(Spreadsheet $spreadsheet): Worksheet
{
$sheet = $spreadsheet->getActiveSheet();
@@ -41,10 +47,9 @@ class ColumnCellIteratorTest extends TestCase
$values = [];
foreach ($iterator as $key => $ColumnCell) {
self::assertNotNull($ColumnCell);
self::assertFalse(self::isCellNull($ColumnCell));
$values[] = $ColumnCell->getValue();
self::assertEquals($ColumnCellIndexResult++, $key);
self::assertInstanceOf(Cell::class, $ColumnCell);
}
$transposed = array_map(null, ...self::CELL_VALUES);
self::assertSame($transposed[0], $values);
@@ -61,10 +66,9 @@ class ColumnCellIteratorTest extends TestCase
$values = [];
foreach ($iterator as $key => $ColumnCell) {
self::assertNotNull($ColumnCell);
self::assertFalse(self::isCellNull($ColumnCell));
$values[] = $ColumnCell->getValue();
self::assertEquals($ColumnCellIndexResult++, $key);
self::assertInstanceOf(Cell::class, $ColumnCell);
}
self::assertSame([120, 130, 140], $values);
$spreadsheet->disconnectWorksheets();