Ejemplo n.º 1
0
 public static function initialize(Config $config)
 {
     ItemTrait::initialize($config);
     InheritedTrait::initialize($config);
     TimestampsTrait::initialize($config);
     $config->addRels([new Rel\BelongsTo('purchase', $config, Purchase::getRepo()), new Rel\BelongsTo('storePurchase', $config, StorePurchase::getRepo())]);
 }
Ejemplo n.º 2
0
 public static function initialize(Config $config)
 {
     ItemGroupTrait::initialize($config);
     TimestampsTrait::initialize($config);
     RandomKeyTrait::initialize($config);
     $config->setTable('StorePurchase')->addRels([new Rel\BelongsTo('purchase', $config, Purchase::getRepo()), new Rel\BelongsTo('store', $config, Store::getRepo()), new Rel\HasMany('items', $config, PurchaseItem::getRepo(), ['inverseOf' => 'storePurchase']), new Rel\HasMany('refunds', $config, Refund::getRepo(), ['inverseOf' => 'storePurchase'])]);
 }
Ejemplo n.º 3
0
 /**
  * @covers ::getCurrentDate
  * @covers ::setCurrentDate
  */
 public function testGetSetCurrentDate()
 {
     $date = TimestampsTrait::getCurrentDate();
     $this->assertGreaterThanOrEqual(time(), strtotime($date));
     TimestampsTrait::setCurrentDate('2014-02-20 22:10:00');
     $date = TimestampsTrait::getCurrentDate();
     $this->assertSame('2014-02-20 22:10:00', $date);
 }
Ejemplo n.º 4
0
 public static function initialize(Config $config)
 {
     ValueTrait::initialize($config);
     TransferTrait::initialize($config);
     TimestampsTrait::initialize($config);
     $config->addRels([new Rel\BelongsTo('storePurchase', $config, StorePurchase::getRepo())])->addAsserts([new Assert\GreaterThan('value', 0), new Assert\Callback('value', function ($refund) {
         return $refund->getValue()->lessThanOrEqual($refund->getStorePurchase()->getRemainingValue());
     }, ':name is more than the remaining value')]);
 }
Ejemplo n.º 5
0
 public static function initialize(Config $config)
 {
     TransferTrait::initialize($config);
     ItemGroupTrait::initialize($config);
     TimestampsTrait::initialize($config);
     RandomKeyTrait::initialize($config);
     CurrencyTrait::initialize($config);
     $config->setTable('Purchase')->addRels([new Rel\HasMany('items', $config, PurchaseItem::getRepo(), ['inverseOf' => 'purchase']), new Rel\HasMany('storePurchases', $config, StorePurchase::getRepo(), ['inverseOf' => 'purchase']), new Rel\BelongsTo('billing', $config, Address::getRepo())]);
 }
Ejemplo n.º 6
0
 public function setUp()
 {
     parent::setUp();
     date_default_timezone_set('UTC');
     $this->logger = new TestLogger();
     DB::setConfig(['dsn' => 'mysql:dbname=harp-orm/timestamps;host=127.0.0.1', 'username' => 'root']);
     DB::get()->setLogger($this->logger);
     DB::get()->beginTransaction();
     Container::clear();
     TimestampsTrait::setCurrentDate(null);
 }
Ejemplo n.º 7
0
 /**
  * @coversNothing
  */
 public function testIntegration()
 {
     TimestampsTrait::setCurrentDate('2014-02-20 22:10:00');
     $new = new User();
     $this->assertNull($new->createdAt);
     $this->assertNull($new->updatedAt);
     User::save($new);
     $this->assertEquals('2014-02-20 22:10:00', $new->createdAt);
     $this->assertEquals('2014-02-20 22:10:00', $new->updatedAt);
     $model = User::find(1);
     $model->name = 'other name';
     $this->assertEquals('2012-02-20 22:10:00', $model->updatedAt);
     User::save($model);
     $this->assertEquals('2014-02-20 22:10:00', $model->updatedAt);
     $this->assertQueries(['INSERT INTO User (id, name, createdAt, updatedAt) VALUES (NULL, NULL, "2014-02-20 22:10:00", "2014-02-20 22:10:00")', 'SELECT User.* FROM User WHERE (id = 1) LIMIT 1', 'UPDATE User SET name = "other name", updatedAt = "2014-02-20 22:10:00" WHERE (id = 1)']);
 }
Ejemplo n.º 8
0
 public static function initialize($repo)
 {
     TimestampsTrait::initialize($repo);
 }