Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
DateTimeProviderTest.php
Go to the documentation of this file.
1 <?php
7 
11 
12 class DateTimeProviderTest extends \PHPUnit\Framework\TestCase
13 {
14  public function testGet()
15  {
16  $dateTime = $this->createMock(\Magento\Framework\Stdlib\DateTime\DateTime::class);
18  $timeZoneProvider = $this->createMock(\Magento\Setup\Model\DateTime\TimeZoneProvider::class);
19  $timeZone = $this->createMock(\Magento\Framework\Stdlib\DateTime\Timezone::class);
20  $timeZoneProvider->expects($this->any())
21  ->method('get')
22  ->willReturn($timeZone);
23  $objectManager = $this->getMockForAbstractClass(
24  \Magento\Framework\ObjectManagerInterface::class,
25  [],
26  '',
27  false
28  );
29  $objectManager->expects($this->once())
30  ->method('create')
31  ->with(
32  \Magento\Framework\Stdlib\DateTime\DateTime::class,
33  ['localeDate' => $timeZone]
34  )
35  ->willReturn($dateTime);
37  $objectManagerProvider = $this->createMock(\Magento\Setup\Model\ObjectManagerProvider::class);
38  $objectManagerProvider->expects($this->any())
39  ->method('get')
40  ->willReturn($objectManager);
41  $object = new DateTimeProvider($timeZoneProvider, $objectManagerProvider);
42  $this->assertSame($dateTime, $object->get());
43  // Assert that the provider always returns the same object
44  $this->assertSame($dateTime, $object->get());
45  }
46 }
$objectManager
Definition: bootstrap.php:17
$dateTime