NoInterfaceTest.php 1.5KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. <?php
  2. namespace Gedmo\Timestampable;
  3. use Doctrine\Common\EventManager;
  4. use Tool\BaseTestCaseORM;
  5. use Doctrine\Common\Util\Debug,
  6. Timestampable\Fixture\WithoutInterface;
  7. /**
  8. * These are tests for Timestampable behavior
  9. *
  10. * @author Gediminas Morkevicius <gediminas.morkevicius@gmail.com>
  11. * @package Gedmo.Timestampable
  12. * @link http://www.gediminasm.org
  13. * @license MIT License (http://www.opensource.org/licenses/mit-license.php)
  14. */
  15. class NoInterfaceTest extends BaseTestCaseORM
  16. {
  17. const FIXTURE = "Timestampable\\Fixture\\WithoutInterface";
  18. protected function setUp()
  19. {
  20. parent::setUp();
  21. $evm = new EventManager;
  22. $evm->addEventSubscriber(new TimestampableListener);
  23. $this->getMockSqliteEntityManager($evm);
  24. }
  25. public function testTimestampableNoInterface()
  26. {
  27. $test = new WithoutInterface();
  28. $test->setTitle('Test');
  29. $date = new \DateTime('now');
  30. $this->em->persist($test);
  31. $this->em->flush();
  32. $this->em->clear();
  33. $test = $this->em->getRepository(self::FIXTURE)->findOneByTitle('Test');
  34. $this->assertEquals(
  35. $date->format('Y-m-d 00:00:00'),
  36. $test->getCreated()->format('Y-m-d H:i:s')
  37. );
  38. $this->assertEquals(
  39. $date->format('Y-m-d H:i'),
  40. $test->getUpdated()->format('Y-m-d H:i')
  41. );
  42. }
  43. protected function getUsedEntityFixtures()
  44. {
  45. return array(
  46. self::FIXTURE,
  47. );
  48. }
  49. }