PhpSpreadsheet/tests/PhpSpreadsheetTests
oleibman c0809b0c6c
Fix Spreadsheet Copy, Disable Clone, Improve Coverage (#2951)
* Fix Spreadsheet Copy, Disable Clone, Improve Coverage

This PR was supposed to be merely to increase coverage in Spreadsheet. However, in doing so, I discovered that neither clone nor copy worked correctly. Neither had been covered in the test suite. Copy not only did not work, it broke the source spreadsheet as well. I tried to debug and got nowhere; I even tried using myclabs/deep-copy which is already in use in the test suite, but it failed as well. However, write and reload ought to work just fine for copy. It can't be used for clone; however, since copy does what clone ought to do, there's no reason why clone needs to be used, so __clone is changed to throw an exception if attempted.

One other source change was needed, an obvious bug where an if condition uses 'or' when it should use 'and'. Also, one docblock declaration needed a change. Aside from that, the rest of this PR is test cases, and overall coverage passes 89% for the first time.

* Clone is Okay After All

But copy wasn't, changing it to just return clone. Perhaps save and reload will be needed instead at some point, but not yet.

* An Error I Cannot Reproduce

PHP8.1 unit test says error because GdImage can't be serialized. I can't reproduce this error on any of my test systems. I have no idea why GdImage is even involved. Using try/catch to see if it helps.

* Weird Failures in Github

I thought restoring clone was a good idea. That left me in a state where, after one change, copy/clone no longer worked on Github (unable to reproduce on any of my test systems). After a second change, copy worked but clone didn't, again unable to reproduce. So, reverting to original version - copy does save and reload, clone throws exception.
2022-07-28 07:03:26 -07:00
..
Calculation Fully flatten an array (#2956) 2022-07-27 19:29:02 -07:00
Cell Add functionality to adjust CellRange by "modifying" the from/to CellAddress Value objects 2022-04-01 15:41:55 +02:00
Chart Charts - Gradients, Transparency, Hidden Axes (#2950) 2022-07-23 08:06:13 -07:00
Collection More significant reductions in memory usage for peaks, and faster execution times for key Cell Collection methods 2022-04-30 17:07:24 +02:00
Custom Reduce PHPStan error in tests 2021-04-12 11:10:23 +09:00
Document Fix Fluke Failure in Document Properties Test (#2738) 2022-04-17 08:44:29 -07:00
Features/AutoFilter/Xlsx Issue 2216 resolve office365 auto filter structure move (#2218) 2021-07-12 03:19:40 +02:00
Functional Some Fixes for Scatter Charts (#2828) 2022-05-17 07:48:24 -07:00
Helper Html Reader Converting Cell Containing 0 to Null String (#2813) 2022-05-10 07:33:45 -07:00
Reader Fix Spreadsheet Copy, Disable Clone, Improve Coverage (#2951) 2022-07-28 07:03:26 -07:00
Shared Php/iconv Should Not Treat FFFE/FFFF as Valid (#2910) 2022-07-02 08:53:39 -07:00
Style Fix Spreadsheet Copy, Disable Clone, Improve Coverage (#2951) 2022-07-28 07:03:26 -07:00
Worksheet New functionality to allow checking whether a row or column is "empty", with flags to allow variation in the definition of "empty" 2022-06-07 20:22:33 +02:00
Writer Additional Support for Chart DataSeriesValues (#2906) 2022-06-29 17:52:09 -07:00
CellReferenceHelperTest.php Provide $includeAbsoluteReferences option for the CellReferenceHelper when updating cell addresses 2022-03-16 19:14:50 +01:00
CommentTest.php phpcs fxes 2022-06-14 12:19:54 +02:00
DefinedNameFormulaTest.php Reduce PHPStan error in tests 2021-04-12 11:10:23 +09:00
DefinedNameTest.php Fix Spreadsheet Copy, Disable Clone, Improve Coverage (#2951) 2022-07-28 07:03:26 -07:00
DocumentGeneratorTest.php Move documentation builder to infra so that it isn't included in non `--dev` composer downloads 2021-05-28 22:35:37 +02:00
HashTableTest.php Improve Coverage for HashTable, Fix Clone 2021-05-30 13:03:37 +02:00
IOFactoryTest.php Allow Reader format identification to use a subset of possible Readers 2022-04-19 14:24:53 +02:00
LocaleGeneratorTest.php Fix phpcs, phpstan and scrutinizer issues 2021-05-28 22:35:37 +02:00
NamedFormulaTest.php Fix Spreadsheet Copy, Disable Clone, Improve Coverage (#2951) 2022-07-28 07:03:26 -07:00
NamedRange2Test.php Validate Input to SetSelectedCells (#2280) 2021-09-11 06:55:00 -07:00
NamedRangeTest.php Fix Spreadsheet Copy, Disable Clone, Improve Coverage (#2951) 2022-07-28 07:03:26 -07:00
ReferenceHelperTest.php More unit testing for inserting/deleting rows/columns with DataValidation, ConditionalFormatting and PrintArea 2022-03-17 15:48:30 +01:00
RichTextTest.php Coverage Improvements (#2859) 2022-06-01 08:29:56 -07:00
SettingsTest.php Fix SettingsTest 2021-06-30 11:33:35 -07:00
SpreadsheetCoverageTest.php Fix Spreadsheet Copy, Disable Clone, Improve Coverage (#2951) 2022-07-28 07:03:26 -07:00
SpreadsheetTest.php FIX: Invalid styles in rowDimensions of added external sheet. 2022-04-12 13:38:19 +02:00