Files
PhpSpreadsheet/tests/PhpSpreadsheetTests/Reader/Ods/OdsInfoTest.php
T
oleibman 9b07be9a0f Add sheetState to ListWorksheetInfo Data
Fix #4345. Add a new item to the output array. Although the output is changed, this does not seem like a breaking change to me.
2025-02-14 23:40:50 -08:00

115 lines
3.0 KiB
PHP

<?php
declare(strict_types=1);
namespace PhpOffice\PhpSpreadsheetTests\Reader\Ods;
use PhpOffice\PhpSpreadsheet\Reader\Exception as ReaderException;
use PhpOffice\PhpSpreadsheet\Reader\Ods;
use PHPUnit\Framework\TestCase;
/**
* @TODO The class doesn't read the bold/italic/underline properties (rich text)
*/
class OdsInfoTest extends TestCase
{
public function testReadFileProperties(): void
{
$filename = 'tests/data/Reader/Ods/data.ods';
// Load into this instance
$reader = new Ods();
// Test "listWorksheetNames" method
self::assertEquals([
'Sheet1',
'Second Sheet',
], $reader->listWorksheetNames($filename));
}
public function testNoMimeType(): void
{
$filename = 'tests/data/Reader/Ods/nomimetype.ods';
// Load into this instance
$reader = new Ods();
self::assertTrue($reader->canRead($filename));
}
public function testReadBadFileProperties(): void
{
$this->expectException(ReaderException::class);
// Load into this instance
$reader = new Ods();
// Test "listWorksheetNames" method
self::assertEquals([
'Sheet1',
'Second Sheet',
], $reader->listWorksheetNames(__FILE__));
}
public function testReadFileInfo(): void
{
$filename = 'tests/data/Reader/Ods/data.ods';
// Load into this instance
$reader = new Ods();
// Test "listWorksheetNames" method
$wsinfo = $reader->listWorkSheetInfo($filename);
self::assertEquals([
[
'worksheetName' => 'Sheet1',
'lastColumnLetter' => 'C',
'lastColumnIndex' => 2,
'totalRows' => 12,
'totalColumns' => 3,
'sheetState' => 'visible',
],
[
'worksheetName' => 'Second Sheet',
'lastColumnLetter' => 'A',
'lastColumnIndex' => 0,
'totalRows' => 2,
'totalColumns' => 1,
'sheetState' => 'visible',
],
], $wsinfo);
}
public function testReadBadFileInfo(): void
{
$this->expectException(ReaderException::class);
$filename = __FILE__;
// Load into this instance
$reader = new Ods();
// Test "listWorksheetNames" method
$wsinfo = $reader->listWorkSheetInfo($filename);
self::assertEquals([
[
'worksheetName' => 'Sheet1',
'lastColumnLetter' => 'C',
'lastColumnIndex' => 2,
'totalRows' => 11,
'totalColumns' => 3,
],
[
'worksheetName' => 'Second Sheet',
'lastColumnLetter' => 'A',
'lastColumnIndex' => 0,
'totalRows' => 2,
'totalColumns' => 1,
],
], $wsinfo);
}
}