You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
42 lines
1.1 KiB
42 lines
1.1 KiB
<?php
|
|
|
|
namespace PhpOffice\PhpSpreadsheetTests\Functional;
|
|
|
|
use PhpOffice\PhpSpreadsheet\Spreadsheet;
|
|
|
|
class MergedCellsTest extends AbstractFunctional
|
|
{
|
|
public static function providerFormats(): array
|
|
{
|
|
return [
|
|
['Html'],
|
|
['Xls'],
|
|
['Xlsx'],
|
|
['Ods'],
|
|
];
|
|
}
|
|
|
|
/**
|
|
* @dataProvider providerFormats
|
|
*
|
|
* @param string $format
|
|
*/
|
|
public function testMergedCells($format): void
|
|
{
|
|
$spreadsheet = new Spreadsheet();
|
|
$spreadsheet->setActiveSheetIndex(0);
|
|
$spreadsheet->getActiveSheet()->setCellValue('A1', '1');
|
|
$spreadsheet->getActiveSheet()->setCellValue('B1', '2');
|
|
$spreadsheet->getActiveSheet()->setCellValue('A2', '33');
|
|
$spreadsheet->getActiveSheet()->mergeCells('A2:B2');
|
|
|
|
$reloadedSpreadsheet = $this->writeAndReload($spreadsheet, $format);
|
|
|
|
$actual = 0;
|
|
foreach ($reloadedSpreadsheet->getWorksheetIterator() as $worksheet) {
|
|
$actual += count($worksheet->getMergeCells());
|
|
}
|
|
|
|
self::assertSame(1, $actual, "Format $format failed, could not read 1 merged cell");
|
|
}
|
|
}
|
|
|