Minor scrutinizer improvements (#1906)
* Minor scrutinizer improvements * Minor typing improvements
This commit is contained in:
parent
2d8c8c8ecf
commit
c4ed0ee7b0
|
|
@ -26,9 +26,13 @@ class AddressHelperTest extends TestCase
|
||||||
/**
|
/**
|
||||||
* @dataProvider providerR1C1ConversionToA1Relative
|
* @dataProvider providerR1C1ConversionToA1Relative
|
||||||
*/
|
*/
|
||||||
public function testR1C1ConversionToA1Relative(string $expectedValue, string $address, ?int $row = null, ?int $column = null): void
|
public function testR1C1ConversionToA1Relative(
|
||||||
{
|
string $expectedValue,
|
||||||
$args = [$address];
|
string $address,
|
||||||
|
?int $row = null,
|
||||||
|
?int $column = null
|
||||||
|
): void {
|
||||||
|
$args = [];
|
||||||
if ($row !== null) {
|
if ($row !== null) {
|
||||||
$args[] = $row;
|
$args[] = $row;
|
||||||
}
|
}
|
||||||
|
|
@ -36,7 +40,7 @@ class AddressHelperTest extends TestCase
|
||||||
$args[] = $column;
|
$args[] = $column;
|
||||||
}
|
}
|
||||||
|
|
||||||
$actualValue = AddressHelper::convertToA1(...$args);
|
$actualValue = AddressHelper::convertToA1($address, ...$args);
|
||||||
|
|
||||||
self::assertSame($expectedValue, $actualValue);
|
self::assertSame($expectedValue, $actualValue);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -232,10 +232,11 @@ class CoordinateTest extends TestCase
|
||||||
* @dataProvider providerBuildRange
|
* @dataProvider providerBuildRange
|
||||||
*
|
*
|
||||||
* @param mixed $expectedResult
|
* @param mixed $expectedResult
|
||||||
|
* @param mixed $rangeSets
|
||||||
*/
|
*/
|
||||||
public function testBuildRange($expectedResult, ...$args): void
|
public function testBuildRange($expectedResult, $rangeSets): void
|
||||||
{
|
{
|
||||||
$result = Coordinate::buildRange(...$args);
|
$result = Coordinate::buildRange($rangeSets);
|
||||||
self::assertEquals($expectedResult, $result);
|
self::assertEquals($expectedResult, $result);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -248,7 +249,16 @@ class CoordinateTest extends TestCase
|
||||||
{
|
{
|
||||||
$this->expectException(TypeError::class);
|
$this->expectException(TypeError::class);
|
||||||
|
|
||||||
$cellRange = '';
|
$cellRange = null;
|
||||||
|
Coordinate::buildRange($cellRange);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function testBuildRangeInvalid2(): void
|
||||||
|
{
|
||||||
|
$this->expectException(Exception::class);
|
||||||
|
$this->expectExceptionMessage('Range does not contain any information');
|
||||||
|
|
||||||
|
$cellRange = [];
|
||||||
Coordinate::buildRange($cellRange);
|
Coordinate::buildRange($cellRange);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -342,10 +352,11 @@ class CoordinateTest extends TestCase
|
||||||
* @dataProvider providerMergeRangesInCollection
|
* @dataProvider providerMergeRangesInCollection
|
||||||
*
|
*
|
||||||
* @param mixed $expectedResult
|
* @param mixed $expectedResult
|
||||||
|
* @param mixed $rangeSets
|
||||||
*/
|
*/
|
||||||
public function testMergeRangesInCollection($expectedResult, ...$args): void
|
public function testMergeRangesInCollection($expectedResult, $rangeSets): void
|
||||||
{
|
{
|
||||||
$result = Coordinate::mergeRangesInCollection(...$args);
|
$result = Coordinate::mergeRangesInCollection($rangeSets);
|
||||||
self::assertEquals($expectedResult, $result);
|
self::assertEquals($expectedResult, $result);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -12,10 +12,11 @@ class CodePageTest extends TestCase
|
||||||
* @dataProvider providerCodePage
|
* @dataProvider providerCodePage
|
||||||
*
|
*
|
||||||
* @param mixed $expectedResult
|
* @param mixed $expectedResult
|
||||||
|
* @param mixed $codePageIndex
|
||||||
*/
|
*/
|
||||||
public function testCodePageNumberToName($expectedResult, ...$args): void
|
public function testCodePageNumberToName($expectedResult, $codePageIndex): void
|
||||||
{
|
{
|
||||||
$result = CodePage::numberToName(...$args);
|
$result = CodePage::numberToName($codePageIndex);
|
||||||
self::assertEquals($expectedResult, $result);
|
self::assertEquals($expectedResult, $result);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -39,7 +39,7 @@ class DateTest extends TestCase
|
||||||
|
|
||||||
public function testSetExcelCalendarWithInvalidValue(): void
|
public function testSetExcelCalendarWithInvalidValue(): void
|
||||||
{
|
{
|
||||||
$unsupportedCalendar = '2012';
|
$unsupportedCalendar = 2012;
|
||||||
$result = Date::setExcelCalendar($unsupportedCalendar);
|
$result = Date::setExcelCalendar($unsupportedCalendar);
|
||||||
self::assertFalse($result);
|
self::assertFalse($result);
|
||||||
}
|
}
|
||||||
|
|
@ -48,15 +48,16 @@ class DateTest extends TestCase
|
||||||
* @dataProvider providerDateTimeExcelToTimestamp1900
|
* @dataProvider providerDateTimeExcelToTimestamp1900
|
||||||
*
|
*
|
||||||
* @param mixed $expectedResult
|
* @param mixed $expectedResult
|
||||||
|
* @param mixed $excelDateTimeValue
|
||||||
*/
|
*/
|
||||||
public function testDateTimeExcelToTimestamp1900($expectedResult, ...$args): void
|
public function testDateTimeExcelToTimestamp1900($expectedResult, $excelDateTimeValue): void
|
||||||
{
|
{
|
||||||
if (is_numeric($expectedResult) && ($expectedResult > PHP_INT_MAX || $expectedResult < PHP_INT_MIN)) {
|
if (is_numeric($expectedResult) && ($expectedResult > PHP_INT_MAX || $expectedResult < PHP_INT_MIN)) {
|
||||||
self::markTestSkipped('Test invalid on 32-bit system.');
|
self::markTestSkipped('Test invalid on 32-bit system.');
|
||||||
}
|
}
|
||||||
Date::setExcelCalendar(Date::CALENDAR_WINDOWS_1900);
|
Date::setExcelCalendar(Date::CALENDAR_WINDOWS_1900);
|
||||||
|
|
||||||
$result = Date::excelToTimestamp(...$args);
|
$result = Date::excelToTimestamp($excelDateTimeValue);
|
||||||
self::assertEquals($expectedResult, $result);
|
self::assertEquals($expectedResult, $result);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -69,12 +70,13 @@ class DateTest extends TestCase
|
||||||
* @dataProvider providerDateTimeTimestampToExcel1900
|
* @dataProvider providerDateTimeTimestampToExcel1900
|
||||||
*
|
*
|
||||||
* @param mixed $expectedResult
|
* @param mixed $expectedResult
|
||||||
|
* @param mixed $unixTimestamp
|
||||||
*/
|
*/
|
||||||
public function testDateTimeTimestampToExcel1900($expectedResult, ...$args): void
|
public function testDateTimeTimestampToExcel1900($expectedResult, $unixTimestamp): void
|
||||||
{
|
{
|
||||||
Date::setExcelCalendar(Date::CALENDAR_WINDOWS_1900);
|
Date::setExcelCalendar(Date::CALENDAR_WINDOWS_1900);
|
||||||
|
|
||||||
$result = Date::timestampToExcel(...$args);
|
$result = Date::timestampToExcel($unixTimestamp);
|
||||||
self::assertEqualsWithDelta($expectedResult, $result, 1E-5);
|
self::assertEqualsWithDelta($expectedResult, $result, 1E-5);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -87,12 +89,13 @@ class DateTest extends TestCase
|
||||||
* @dataProvider providerDateTimeDateTimeToExcel
|
* @dataProvider providerDateTimeDateTimeToExcel
|
||||||
*
|
*
|
||||||
* @param mixed $expectedResult
|
* @param mixed $expectedResult
|
||||||
|
* @param mixed $dateTimeObject
|
||||||
*/
|
*/
|
||||||
public function testDateTimeDateTimeToExcel($expectedResult, ...$args): void
|
public function testDateTimeDateTimeToExcel($expectedResult, $dateTimeObject): void
|
||||||
{
|
{
|
||||||
Date::setExcelCalendar(Date::CALENDAR_WINDOWS_1900);
|
Date::setExcelCalendar(Date::CALENDAR_WINDOWS_1900);
|
||||||
|
|
||||||
$result = Date::dateTimeToExcel(...$args);
|
$result = Date::dateTimeToExcel($dateTimeObject);
|
||||||
self::assertEqualsWithDelta($expectedResult, $result, 1E-5);
|
self::assertEqualsWithDelta($expectedResult, $result, 1E-5);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -123,15 +126,16 @@ class DateTest extends TestCase
|
||||||
* @dataProvider providerDateTimeExcelToTimestamp1904
|
* @dataProvider providerDateTimeExcelToTimestamp1904
|
||||||
*
|
*
|
||||||
* @param mixed $expectedResult
|
* @param mixed $expectedResult
|
||||||
|
* @param mixed $excelDateTimeValue
|
||||||
*/
|
*/
|
||||||
public function testDateTimeExcelToTimestamp1904($expectedResult, ...$args): void
|
public function testDateTimeExcelToTimestamp1904($expectedResult, $excelDateTimeValue): void
|
||||||
{
|
{
|
||||||
if (is_numeric($expectedResult) && ($expectedResult > PHP_INT_MAX || $expectedResult < PHP_INT_MIN)) {
|
if (is_numeric($expectedResult) && ($expectedResult > PHP_INT_MAX || $expectedResult < PHP_INT_MIN)) {
|
||||||
self::markTestSkipped('Test invalid on 32-bit system.');
|
self::markTestSkipped('Test invalid on 32-bit system.');
|
||||||
}
|
}
|
||||||
Date::setExcelCalendar(Date::CALENDAR_MAC_1904);
|
Date::setExcelCalendar(Date::CALENDAR_MAC_1904);
|
||||||
|
|
||||||
$result = Date::excelToTimestamp(...$args);
|
$result = Date::excelToTimestamp($excelDateTimeValue);
|
||||||
self::assertEquals($expectedResult, $result);
|
self::assertEquals($expectedResult, $result);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -144,12 +148,13 @@ class DateTest extends TestCase
|
||||||
* @dataProvider providerDateTimeTimestampToExcel1904
|
* @dataProvider providerDateTimeTimestampToExcel1904
|
||||||
*
|
*
|
||||||
* @param mixed $expectedResult
|
* @param mixed $expectedResult
|
||||||
|
* @param mixed $unixTimestamp
|
||||||
*/
|
*/
|
||||||
public function testDateTimeTimestampToExcel1904($expectedResult, ...$args): void
|
public function testDateTimeTimestampToExcel1904($expectedResult, $unixTimestamp): void
|
||||||
{
|
{
|
||||||
Date::setExcelCalendar(Date::CALENDAR_MAC_1904);
|
Date::setExcelCalendar(Date::CALENDAR_MAC_1904);
|
||||||
|
|
||||||
$result = Date::timestampToExcel(...$args);
|
$result = Date::timestampToExcel($unixTimestamp);
|
||||||
self::assertEqualsWithDelta($expectedResult, $result, 1E-5);
|
self::assertEqualsWithDelta($expectedResult, $result, 1E-5);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -178,15 +183,17 @@ class DateTest extends TestCase
|
||||||
* @dataProvider providerDateTimeExcelToTimestamp1900Timezone
|
* @dataProvider providerDateTimeExcelToTimestamp1900Timezone
|
||||||
*
|
*
|
||||||
* @param mixed $expectedResult
|
* @param mixed $expectedResult
|
||||||
|
* @param mixed $excelDateTimeValue
|
||||||
|
* @param mixed $timezone
|
||||||
*/
|
*/
|
||||||
public function testDateTimeExcelToTimestamp1900Timezone($expectedResult, ...$args): void
|
public function testDateTimeExcelToTimestamp1900Timezone($expectedResult, $excelDateTimeValue, $timezone): void
|
||||||
{
|
{
|
||||||
if (is_numeric($expectedResult) && ($expectedResult > PHP_INT_MAX || $expectedResult < PHP_INT_MIN)) {
|
if (is_numeric($expectedResult) && ($expectedResult > PHP_INT_MAX || $expectedResult < PHP_INT_MIN)) {
|
||||||
self::markTestSkipped('Test invalid on 32-bit system.');
|
self::markTestSkipped('Test invalid on 32-bit system.');
|
||||||
}
|
}
|
||||||
Date::setExcelCalendar(Date::CALENDAR_WINDOWS_1900);
|
Date::setExcelCalendar(Date::CALENDAR_WINDOWS_1900);
|
||||||
|
|
||||||
$result = Date::excelToTimestamp(...$args);
|
$result = Date::excelToTimestamp($excelDateTimeValue, $timezone);
|
||||||
self::assertEquals($expectedResult, $result);
|
self::assertEquals($expectedResult, $result);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -202,29 +209,37 @@ class DateTest extends TestCase
|
||||||
self::assertTrue((bool) Date::stringToExcel('2019-02-28'));
|
self::assertTrue((bool) Date::stringToExcel('2019-02-28'));
|
||||||
self::assertTrue((bool) Date::stringToExcel('2019-02-28 11:18'));
|
self::assertTrue((bool) Date::stringToExcel('2019-02-28 11:18'));
|
||||||
self::assertFalse(Date::stringToExcel('2019-02-28 11:71'));
|
self::assertFalse(Date::stringToExcel('2019-02-28 11:71'));
|
||||||
|
|
||||||
$date = Date::PHPToExcel('2020-01-01');
|
$date = Date::PHPToExcel('2020-01-01');
|
||||||
self::assertEquals(43831.0, $date);
|
self::assertEquals(43831.0, $date);
|
||||||
|
|
||||||
$spreadsheet = new \PhpOffice\PhpSpreadsheet\Spreadsheet();
|
$spreadsheet = new \PhpOffice\PhpSpreadsheet\Spreadsheet();
|
||||||
$sheet = $spreadsheet->getActiveSheet();
|
$sheet = $spreadsheet->getActiveSheet();
|
||||||
$sheet->setCellValue('B1', 'x');
|
$sheet->setCellValue('B1', 'x');
|
||||||
$val = $sheet->getCell('B1')->getValue();
|
$val = $sheet->getCell('B1')->getValue();
|
||||||
self::assertFalse(Date::timestampToExcel($val));
|
self::assertFalse(Date::timestampToExcel($val));
|
||||||
|
|
||||||
$cell = $sheet->getCell('A1');
|
$cell = $sheet->getCell('A1');
|
||||||
self::assertNotNull($cell);
|
self::assertNotNull($cell);
|
||||||
|
|
||||||
$cell->setValue($date);
|
$cell->setValue($date);
|
||||||
$sheet->getStyle('A1')
|
$sheet->getStyle('A1')
|
||||||
->getNumberFormat()
|
->getNumberFormat()
|
||||||
->setFormatCode(NumberFormat::FORMAT_DATE_DATETIME);
|
->setFormatCode(NumberFormat::FORMAT_DATE_DATETIME);
|
||||||
self::assertTrue(null !== $cell && Date::isDateTime($cell));
|
self::assertTrue(null !== $cell && Date::isDateTime($cell));
|
||||||
|
|
||||||
$cella2 = $sheet->getCell('A2');
|
$cella2 = $sheet->getCell('A2');
|
||||||
self::assertNotNull($cella2);
|
self::assertNotNull($cella2);
|
||||||
|
|
||||||
$cella2->setValue('=A1+2');
|
$cella2->setValue('=A1+2');
|
||||||
$sheet->getStyle('A2')
|
$sheet->getStyle('A2')
|
||||||
->getNumberFormat()
|
->getNumberFormat()
|
||||||
->setFormatCode(NumberFormat::FORMAT_DATE_DATETIME);
|
->setFormatCode(NumberFormat::FORMAT_DATE_DATETIME);
|
||||||
self::assertTrue(null !== $cella2 && Date::isDateTime($cella2));
|
self::assertTrue(null !== $cella2 && Date::isDateTime($cella2));
|
||||||
|
|
||||||
$cella3 = $sheet->getCell('A3');
|
$cella3 = $sheet->getCell('A3');
|
||||||
self::assertNotNull($cella3);
|
self::assertNotNull($cella3);
|
||||||
|
|
||||||
$cella3->setValue('=A1+4');
|
$cella3->setValue('=A1+4');
|
||||||
$sheet->getStyle('A3')
|
$sheet->getStyle('A3')
|
||||||
->getNumberFormat()
|
->getNumberFormat()
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue