76 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
		
		
			
		
	
	
			76 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
|   | <?php | ||
|  | 
 | ||
|  | namespace PhpOffice\PhpSpreadsheetTests\Reader\Xml; | ||
|  | 
 | ||
|  | use PhpOffice\PhpSpreadsheet\Reader\Exception as ReaderException; | ||
|  | use PhpOffice\PhpSpreadsheet\Reader\Xml; | ||
|  | use PHPUnit\Framework\TestCase; | ||
|  | 
 | ||
|  | class XmlInfoTest extends TestCase | ||
|  | { | ||
|  |     public function testListNames(): void | ||
|  |     { | ||
|  |         $filename = __DIR__ | ||
|  |             . '/../../../..' | ||
|  |             . '/samples/templates/excel2003.xml'; | ||
|  |         $reader = new Xml(); | ||
|  |         $names = $reader->listWorksheetNames($filename); | ||
|  |         self::assertCount(2, $names); | ||
|  |         self::assertEquals('Sample Data', $names[0]); | ||
|  |         self::assertEquals('Report Data', $names[1]); | ||
|  |     } | ||
|  | 
 | ||
|  |     public function testListNamesInvalidFile(): void | ||
|  |     { | ||
|  |         $this->expectException(ReaderException::class); | ||
|  |         $filename = __FILE__; | ||
|  |         $reader = new Xml(); | ||
|  |         $names = $reader->listWorksheetNames($filename); | ||
|  |         self::assertNotEquals($names, $names); | ||
|  |     } | ||
|  | 
 | ||
|  |     public function testListInfo(): void | ||
|  |     { | ||
|  |         $filename = __DIR__ | ||
|  |             . '/../../../..' | ||
|  |             . '/samples/templates/excel2003.xml'; | ||
|  |         $reader = new Xml(); | ||
|  |         $info = $reader->listWorksheetInfo($filename); | ||
|  |         $expected = [ | ||
|  |             [ | ||
|  |                 'worksheetName' => 'Sample Data', | ||
|  |                 'lastColumnLetter' => 'J', | ||
|  |                 'lastColumnIndex' => 9, | ||
|  |                 'totalRows' => 31, | ||
|  |                 'totalColumns' => 10, | ||
|  |             ], | ||
|  |             [ | ||
|  |                 'worksheetName' => 'Report Data', | ||
|  |                 'lastColumnLetter' => 'I', | ||
|  |                 'lastColumnIndex' => 8, | ||
|  |                 'totalRows' => 15, | ||
|  |                 'totalColumns' => 9, | ||
|  |             ], | ||
|  |         ]; | ||
|  |         self::assertEquals($expected, $info); | ||
|  |     } | ||
|  | 
 | ||
|  |     public function testListInfoInvalidFile(): void | ||
|  |     { | ||
|  |         $this->expectException(ReaderException::class); | ||
|  |         $filename = __FILE__; | ||
|  |         $reader = new Xml(); | ||
|  |         $info = $reader->listWorksheetInfo($filename); | ||
|  |         self::assertNotEquals($info, $info); | ||
|  |     } | ||
|  | 
 | ||
|  |     public function testLoadInvalidFile(): void | ||
|  |     { | ||
|  |         $this->expectException(ReaderException::class); | ||
|  |         $filename = __FILE__; | ||
|  |         $reader = new Xml(); | ||
|  |         $spreadsheet = $reader->load($filename); | ||
|  |         self::assertNotEquals($spreadsheet, $spreadsheet); | ||
|  |     } | ||
|  | } |