/** * @dataProvider partialPayoutData */ public function testCreatePartialPayout(Payment $payment, User $user, $amount, $description) { $partialPayout = new PartialPayout($payment); $partialPayout->setAmount($amount); $partialPayout->setUser($user); $partialPayout->setDescription($description); $this->em->expects($this->once())->method('persist')->with($partialPayout); $this->paymentManager->createPartialPayout($payment, $user, $amount, $description); }
public function createPartialPayout(Payment $payment, User $user, $amount, $description = '') { $partialPayout = new PartialPayout($payment); $partialPayout->setAmount($amount); $partialPayout->setUser($user); $partialPayout->setDescription($description); $user->addPartialPayout($partialPayout); $this->em->persist($partialPayout); return $partialPayout; }
public function testGetCurrentPayoutBalance() { $user = new User(); $payment1 = new Payment(); $partialPayout1 = new PartialPayout($payment1); $partialPayout1->setAmount(100); $user->addPartialPayout($partialPayout1); $this->assertEquals(100, $user->getCurrentPayoutBalance()); $payment2 = new Payment(); $partialPayout2 = new PartialPayout($payment2); $partialPayout2->setAmount(200); $user->addPartialPayout($partialPayout2); $this->assertEquals(300, $user->getCurrentPayoutBalance()); $payout1 = new Payout(); $payout1->setAmount(150); $user->addPayout($payout1); $this->assertEquals(150, $user->getCurrentPayoutBalance()); }