![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/old/vendor/magento/framework/Stdlib/Test/Unit/DateTime/Filter/ |
<?php /** * Copyright © Magento, Inc. All rights reserved. * See COPYING.txt for license details. */ declare(strict_types=1); namespace Magento\Framework\Stdlib\Test\Unit\DateTime\Filter; use Exception; use IntlDateFormatter; use Magento\Framework\Stdlib\DateTime\Filter\DateTime; use Magento\Framework\Stdlib\DateTime\TimezoneInterface; use PHPUnit\Framework\TestCase; class DateTimeTest extends TestCase { /** * @param string $inputData * @param string $expectedDate * * @dataProvider dateTimeFilterDataProvider */ public function testFilter($inputData, $expectedDate) { $localeMock = $this->getMockForAbstractClass(TimezoneInterface::class); $localeMock->expects( $this->once() )->method( 'getDateTimeFormat' )->with( IntlDateFormatter::SHORT )->willReturn( 'HH:mm:ss MM-dd-yyyy' ); $model = new DateTime($localeMock); $localeMock->expects($this->once())->method('date')->willReturn(new \DateTime($inputData)); $this->assertEquals($expectedDate, $model->filter($inputData)); } /** * @return array */ public function dateTimeFilterDataProvider() { return [ ['2000-01-01 02:30:00', '2000-01-01 02:30:00'], ['2014-03-30T02:30:00', '2014-03-30 02:30:00'], ['12/31/2000 02:30:00', '2000-12-31 02:30:00'], ['02:30:00 12/31/2000', '2000-12-31 02:30:00'], ]; } /** * @dataProvider dateTimeFilterWithExceptionDataProvider */ public function testFilterWithException($inputData) { $this->expectException(Exception::class); $localeMock = $this->getMockForAbstractClass(TimezoneInterface::class); $localeMock->expects( $this->once() )->method( 'getDateFormat' )->with( IntlDateFormatter::SHORT )->willReturn( 'MM-dd-yyyy' ); $model = new DateTime($localeMock); $localeMock->expects($this->any())->method('date')->willReturn(new \DateTime($inputData)); $model->filter($inputData); } /** * @return array */ public function dateTimeFilterWithExceptionDataProvider() { return [ ['12-31-2000 22:22:22'], ['22/2000-01 22:22:22'], ]; } }