コード例 #1
0
ファイル: StorePurchase.php プロジェクト: clippings/purchases
 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'])]);
 }
コード例 #2
0
ファイル: RefundTest.php プロジェクト: clippings/purchases
 /**
  * @covers ::initialize
  */
 public function testInitialize()
 {
     $refund = Refund::getRepo();
     $storePurchase = $refund->getRelOrError('storePurchase');
     $this->assertEquals('CL\\Purchases\\StorePurchase', $storePurchase->getRepo()->getModelClass());
     $refund = new Refund(['isFrozen' => true]);
     $storePurchase = $this->getMock('CL\\Purchases\\StorePurchase', ['getRemainingValue']);
     $storePurchase->expects($this->exactly(4))->method('getRemainingValue')->will($this->returnValue(new Money(800, $storePurchase->getCurrency())));
     $refund->setStorePurchase($storePurchase);
     $this->assertFalse($refund->validate());
     $refund->value = 800;
     $this->assertTrue($refund->validate());
     $refund->value = 300;
     $this->assertTrue($refund->validate());
     $refund->value = -300;
     $this->assertFalse($refund->validate());
 }
コード例 #3
0
 /**
  * @covers ::getRefunds
  */
 public function testRefunds()
 {
     $storePurchase = new StorePurchase();
     $refunds = $storePurchase->getRefunds();
     $this->assertEquals(Refund::getRepo(), $refunds->getRel()->getRepo());
 }