mirror of
https://github.com/PHPOffice/PhpSpreadsheet.git
synced 2026-08-25 04:48:18 +00:00
a91dd60a98
Also enforce more rigorous Excel Function implementation by testing the underlying implementation, call via the Calc Engine, and execution from in a worksheet. Separate out unhappy path (exception) checks into a separate test, so that a single test isn't made overcomplex checking for every potentiality. Scrutinizer may dislike variadics, for variable number of arguments of mixed type; but tough. It's 100% valid PHP, accepted by phpstan, and makes life a lot easier. Initial work here covers all the database and datetime unit tests for Excel function implementations.
44 lines
1.0 KiB
PHP
44 lines
1.0 KiB
PHP
<?php
|
|
|
|
use PhpOffice\PhpSpreadsheet\Calculation\Information\ExcelError;
|
|
|
|
return [
|
|
[5, '24-Oct-1968'],
|
|
[5, '24-Oct-1968', 1],
|
|
[4, '24-Oct-1968', 2],
|
|
[3, '24-Oct-1968', 3],
|
|
[ExcelError::NAN(), '24-Oct-1968', 4],
|
|
[ExcelError::NAN(), '24-Oct-1968', 0],
|
|
[ExcelError::NAN(), '24-Oct-1968', -1],
|
|
[4, '2000-06-14'],
|
|
[3, '2000-06-14', 2],
|
|
[2, '2000-06-14', 3],
|
|
[4, '1996-07-24'],
|
|
[3, '1996-07-24', 2],
|
|
[2, '1996-07-24', 3],
|
|
[7, '1996-07-27'],
|
|
[6, '1996-07-27', 2],
|
|
[5, '1996-07-27', 3],
|
|
[1, '1977-7-31'],
|
|
[7, '1977-7-31', 2],
|
|
[6, '1977-7-31', 3],
|
|
[2, '1977-8-1'],
|
|
[1, '1977-8-1', 2],
|
|
[0, '1977-8-1', 3],
|
|
[7, '1900-2-5', 2],
|
|
[4, '1900-2-1'],
|
|
[6, 38093],
|
|
[6, 38093, 1],
|
|
[5, 38093, 2],
|
|
[4, 38093, 3],
|
|
[ExcelError::VALUE(), '3/7/1977', 'A'],
|
|
[ExcelError::NAN(), '3/7/1977', 0],
|
|
[ExcelError::VALUE(), 'Invalid', 1],
|
|
[ExcelError::NAN(), -1],
|
|
[1, false],
|
|
[2, true],
|
|
[1, '1900-01-01'],
|
|
[7, '1900-01-01', 2],
|
|
[7, '1900-02-05', 2],
|
|
];
|