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())]); }
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'])]); }
/** * @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); }
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')]); }
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())]); }
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); }
/** * @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)']); }
public static function initialize($repo) { TimestampsTrait::initialize($repo); }