From 28fb962cdb111d77e6e19b7e2f6efb520cd696a2 Mon Sep 17 00:00:00 2001 From: oleibman <10341515+oleibman@users.noreply.github.com> Date: Mon, 20 Feb 2023 06:07:12 -0800 Subject: [PATCH] Complete Functions Coverage for Xls (except GETPIVOTDATA) (#3383) Finish the work started in PR #3371 and PR #3340. --- .../Reader/Xls/FormulasTest.php | 17 +++++++++++++++++ tests/data/Reader/XLS/formulas.other.xls | Bin 0 -> 15360 bytes 2 files changed, 17 insertions(+) create mode 100644 tests/data/Reader/XLS/formulas.other.xls diff --git a/tests/PhpSpreadsheetTests/Reader/Xls/FormulasTest.php b/tests/PhpSpreadsheetTests/Reader/Xls/FormulasTest.php index c27972054..68434c946 100644 --- a/tests/PhpSpreadsheetTests/Reader/Xls/FormulasTest.php +++ b/tests/PhpSpreadsheetTests/Reader/Xls/FormulasTest.php @@ -40,4 +40,21 @@ class FormulasTest extends AbstractFunctional self::assertSame($originalArray, $newArray); $newSpreadsheet->disconnectWorksheets(); } + + public function testOtherFormulas(): void + { + // This file was created with Excel 2003. + $filename = 'tests/data/Reader/XLS/formulas.other.xls'; + $reader = new Xls(); + $spreadsheet = $reader->load($filename); + $sheet = $spreadsheet->getActiveSheet(); + $originalArray = $sheet->toArray(null, false, false, false); + + $newSpreadsheet = $this->writeAndReload($spreadsheet, 'Xls'); + $spreadsheet->disconnectWorksheets(); + $newWorksheet = $newSpreadsheet->getActiveSheet(); + $newArray = $newWorksheet->toArray(null, false, false, false); + self::assertSame($originalArray, $newArray); + $newSpreadsheet->disconnectWorksheets(); + } } diff --git a/tests/data/Reader/XLS/formulas.other.xls b/tests/data/Reader/XLS/formulas.other.xls new file mode 100644 index 0000000000000000000000000000000000000000..38a71549b2770f066f1027e047254cfb94a0e3c4 GIT binary patch literal 15360 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 literal 0 HcmV?d00001