mirror of
https://github.com/PHPOffice/PhpSpreadsheet.git
synced 2026-08-25 12:48:18 +00:00
4e2259c135
Both methods used to optionally return null if passed a second argument. This second argument was removed entirely and the method always returns a RowDimension or ColumnDimension respectively (possibly creating it if needed). This make the API more predictable and easier to do static analysis with tools such as PHPStan. If you relied on that second parameter, you should instead use the `Worksheet::getRowDimensions()` or `Worksheet::getColumnDimensions()` and check for existence yourself before calling the getters.
44 lines
1.2 KiB
PHP
44 lines
1.2 KiB
PHP
<?php
|
|
|
|
namespace PhpOffice\PhpSpreadsheetTests\Functional;
|
|
|
|
use PhpOffice\PhpSpreadsheet\Spreadsheet;
|
|
use PhpOffice\PhpSpreadsheet\Worksheet\ColumnDimension;
|
|
|
|
class ColumnWidthTest extends AbstractFunctional
|
|
{
|
|
public function providerFormats(): array
|
|
{
|
|
return [
|
|
['Xlsx'],
|
|
];
|
|
}
|
|
|
|
/**
|
|
* @dataProvider providerFormats
|
|
*/
|
|
public function testReadColumnWidth($format): void
|
|
{
|
|
// create new sheet with column width
|
|
$spreadsheet = new Spreadsheet();
|
|
$sheet = $spreadsheet->getActiveSheet();
|
|
$sheet->setCellValue('A1', 'Hello World !');
|
|
$sheet->getColumnDimension('A')->setWidth(20);
|
|
$this->assertColumn($spreadsheet);
|
|
|
|
$reloadedSpreadsheet = $this->writeAndReload($spreadsheet, $format);
|
|
$this->assertColumn($reloadedSpreadsheet);
|
|
}
|
|
|
|
private function assertColumn(Spreadsheet $spreadsheet): void
|
|
{
|
|
$sheet = $spreadsheet->getActiveSheet();
|
|
$columnDimensions = $sheet->getColumnDimensions();
|
|
|
|
self::assertArrayHasKey('A', $columnDimensions);
|
|
$column = array_shift($columnDimensions);
|
|
self::assertInstanceOf(ColumnDimension::class, $column);
|
|
self::assertEquals(20, $column->getWidth());
|
|
}
|
|
}
|