mirror of
https://github.com/PHPOffice/PhpSpreadsheet.git
synced 2026-08-25 17:28:20 +00:00
de230fa899
* Html Reader Comments See issue #2234. Html Reader processes Comment as comment, then processes it as part of cell contents. Change to only do the first. Comment Test checks that comment read by Html Reader is okay, but neglects to check the value of the cell to which the comment is attached. Added that check. * Disconnect Worksheets ... at end of test.
59 lines
1.9 KiB
PHP
59 lines
1.9 KiB
PHP
<?php
|
|
|
|
namespace PhpOffice\PhpSpreadsheetTests\Functional;
|
|
|
|
use PhpOffice\PhpSpreadsheet\Spreadsheet;
|
|
use PhpOffice\PhpSpreadsheet\Style\Alignment;
|
|
|
|
class CommentsTest extends AbstractFunctional
|
|
{
|
|
public function providerFormats(): array
|
|
{
|
|
return [
|
|
['Html'],
|
|
['Xlsx'],
|
|
['Ods'],
|
|
];
|
|
}
|
|
|
|
/**
|
|
* Test load file with comment in sheet to load proper
|
|
* count of comments in correct coords.
|
|
*
|
|
* @dataProvider providerFormats
|
|
*/
|
|
public function testComments($format): void
|
|
{
|
|
$spreadsheet = new Spreadsheet();
|
|
|
|
$spreadsheet->getActiveSheet()->getCell('E10')->setValue('Comment');
|
|
$spreadsheet->getActiveSheet()
|
|
->getComment('E10')
|
|
->getText()
|
|
->createText('Comment to test');
|
|
|
|
$reloadedSpreadsheet = $this->writeAndReload($spreadsheet, $format);
|
|
|
|
$sheet = $reloadedSpreadsheet->getSheet(0);
|
|
$commentsLoaded = $sheet->getComments();
|
|
self::assertCount(1, $commentsLoaded);
|
|
|
|
$commentCoordinate = key($commentsLoaded);
|
|
self::assertSame('E10', $commentCoordinate);
|
|
self::assertSame('Comment', $sheet->getCell('E10')->getValue());
|
|
$comment = $commentsLoaded[$commentCoordinate];
|
|
self::assertSame('Comment to test', (string) $comment);
|
|
$commentClone = clone $comment;
|
|
self::assertEquals($comment, $commentClone);
|
|
self::assertNotSame($comment, $commentClone);
|
|
if ($format === 'Xlsx') {
|
|
self::assertEquals('feb0c24b880a8130262dadf801f85e94', $comment->getHashCode());
|
|
self::assertEquals(Alignment::HORIZONTAL_GENERAL, $comment->getAlignment());
|
|
$comment->setAlignment(Alignment::HORIZONTAL_RIGHT);
|
|
self::assertEquals(Alignment::HORIZONTAL_RIGHT, $comment->getAlignment());
|
|
}
|
|
$spreadsheet->disconnectWorksheets();
|
|
$reloadedSpreadsheet->disconnectWorksheets();
|
|
}
|
|
}
|