RichTextTest.php 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. <?php
  2. namespace PhpOffice\PhpSpreadsheetTests;
  3. use PhpOffice\PhpSpreadsheet\RichText\RichText;
  4. use PhpOffice\PhpSpreadsheet\RichText\TextElement;
  5. use PhpOffice\PhpSpreadsheet\Spreadsheet;
  6. use PHPUnit\Framework\TestCase;
  7. class RichTextTest extends TestCase
  8. {
  9. public function testConstructorSpecifyingCell(): void
  10. {
  11. $spreadsheet = new Spreadsheet();
  12. $sheet = $spreadsheet->getActiveSheet();
  13. $cell = $sheet->getCell('A1');
  14. $cell->setValue(2);
  15. self::assertSame(2, $cell->getCalculatedValue());
  16. $cell->getStyle()->getFont()->setName('whatever');
  17. $richText = new RichText($cell);
  18. self::assertSame('whatever', $sheet->getCell('A1')->getStyle()->getFont()->getName());
  19. self::assertEquals($richText, $cell->getValue());
  20. self::assertSame('2', $cell->getCalculatedValue());
  21. $spreadsheet->disconnectWorksheets();
  22. }
  23. public function testTextElements(): void
  24. {
  25. $element1 = new TextElement('A');
  26. $element2 = new TextElement('B');
  27. $element3 = new TextElement('C');
  28. $richText = new RichText();
  29. $richText->setRichTextElements([$element1, $element2, $element3]);
  30. self::assertSame('ABC', $richText->getPlainText());
  31. $cloneText = clone $richText;
  32. self::assertEquals($richText, $cloneText);
  33. self::assertNotSame($richText, $cloneText);
  34. }
  35. }