MongoDateTest.php 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. <?php
  2. namespace Alcaeus\MongoDbAdapter\Tests;
  3. /**
  4. * @author alcaeus <alcaeus@alcaeus.org>
  5. */
  6. class MongoDateTest extends TestCase
  7. {
  8. public function testCreate()
  9. {
  10. $date = new \MongoDate(1234567890, 123456);
  11. $this->assertAttributeSame(1234567890, 'sec', $date);
  12. $this->assertAttributeSame(123000, 'usec', $date);
  13. $this->assertSame('0.12300000 1234567890', (string) $date);
  14. $dateTime = $date->toDateTime();
  15. $this->assertSame(1234567890, $dateTime->getTimestamp());
  16. $this->assertSame('123000', $dateTime->format('u'));
  17. $bsonDate = $date->toBSONType();
  18. $this->assertInstanceOf('MongoDB\BSON\UTCDateTime', $bsonDate);
  19. $this->assertSame('1234567890123', (string) $bsonDate);
  20. $this->assertEquals($dateTime, $bsonDate->toDateTime());
  21. }
  22. public function testCreateWithBsonDate()
  23. {
  24. $bsonDate = new \MongoDB\BSON\UTCDateTime(1234567890123);
  25. $date = new \MongoDate($bsonDate);
  26. $this->assertAttributeSame(1234567890, 'sec', $date);
  27. $this->assertAttributeSame(123000, 'usec', $date);
  28. }
  29. }