From cefe1233e392e6cceda9acbd10968b05c975a7fc Mon Sep 17 00:00:00 2001 From: Matthieu Marcillaud <marcimat@rezo.net> Date: Mon, 10 Jul 2023 15:08:35 +0200 Subject: [PATCH] tests: tests date_iso en phpunit --- tests/Filtre/Date/DateIsoTest.php | 46 ++++++++++++++++++++++++++ tests/legacy/unit/filtres/date_iso.php | 33 ------------------ 2 files changed, 46 insertions(+), 33 deletions(-) create mode 100644 tests/Filtre/Date/DateIsoTest.php delete mode 100644 tests/legacy/unit/filtres/date_iso.php diff --git a/tests/Filtre/Date/DateIsoTest.php b/tests/Filtre/Date/DateIsoTest.php new file mode 100644 index 000000000..c6ae9a8c9 --- /dev/null +++ b/tests/Filtre/Date/DateIsoTest.php @@ -0,0 +1,46 @@ +<?php + +declare(strict_types=1); + +/** + * Test unitaire de la fonction date_ical du fichier inc/filtres.php + */ + +namespace Spip\Test\Filtre\Date; + +use PHPUnit\Framework\Attributes\DataProvider; +use PHPUnit\Framework\TestCase; + +class DateIsoTest extends TestCase +{ + public static function setUpBeforeClass(): void { + find_in_path('inc/filtres.php', '', true); + } + + protected function setUp(): void { + date_default_timezone_set('UTC'); + } + + #[DataProvider('providerDateIso')] + public function testDateIso($expected, ...$args): void { + $actual = date_iso(...$args); + $this->assertSame($expected, $actual); + } + + public static function providerDateIso(): array { + return [ + '01-01-2010' => [ + 0 => gmdate('Y-m-d\TH:i:s\Z', mktime(2, 5, 30, 1, 1, 2010)), + 1 => '2010-01-01 02:05:30', + ], + 'nc-01-2010' => [ + 0 => gmdate('Y-m-d\TH:i:s\Z', mktime(3, 6, 40, 1, 1, 2010)), + 1 => '2010-01-00 03:06:40', + ], + 'nc-nc-2010' => [ + 0 => gmdate('Y-m-d\TH:i:s\Z', mktime(4, 7, 50, 1, 1, 2010)), + 1 => '2010-00-00 04:07:50', + ], + ]; + } +} diff --git a/tests/legacy/unit/filtres/date_iso.php b/tests/legacy/unit/filtres/date_iso.php deleted file mode 100644 index f970a0dda..000000000 --- a/tests/legacy/unit/filtres/date_iso.php +++ /dev/null @@ -1,33 +0,0 @@ -<?php - -declare(strict_types=1); - -$test = 'date_iso'; - -$remonte = __DIR__ . '/'; - -while (!is_file($remonte . 'test.inc')) { - $remonte .= '../'; -} - -require $remonte . 'test.inc'; - -include_spip('inc/filtres'); - -$essais['01-01-2010'] = [gmdate('Y-m-d\TH:i:s\Z', mktime(2, 5, 30, 1, 1, 2010)), '2010-01-01 02:05:30']; - -$essais['nc-01-2010'] = [gmdate('Y-m-d\TH:i:s\Z', mktime(3, 6, 40, 1, 1, 2010)), '2010-01-00 03:06:40']; - -$essais['nc-nc-2010'] = [gmdate('Y-m-d\TH:i:s\Z', mktime(4, 7, 50, 1, 1, 2010)), '2010-00-00 04:07:50']; - -// si le tableau $err est pas vide ca va pas - -$err = tester_fun('date_iso', $essais); - -// si le tableau $err est pas vide ca va pas - -if ($err) { - die('<dl>' . implode('', $err) . '</dl>'); -} - -echo 'OK'; -- GitLab