public function testSetGetState() { $transaction = new FinancialTransaction(); $this->assertEquals(FinancialTransaction::STATE_NEW, $transaction->getState()); $transaction->setState(FinancialTransaction::STATE_PENDING); $this->assertEquals(FinancialTransaction::STATE_PENDING, $transaction->getState()); }
protected function createTransaction($amount, $currency) { $transaction = new FinancialTransaction(); $transaction->setState(FinancialTransactionInterface::STATE_PENDING); $transaction->setRequestedAmount($amount); $paymentInstruction = new PaymentInstruction($amount, $currency, 'sips', new ExtendedData()); $payment = new Payment($paymentInstruction, $amount); $payment->addTransaction($transaction); return $transaction; }
public function testGetPendingTransactionAndHasPendingTransaction() { $credit = new Credit($this->getInstruction(), 100); $this->assertFalse($credit->hasPendingTransaction()); $transaction = new FinancialTransaction(); $credit->addTransaction($transaction); $this->assertFalse($credit->hasPendingTransaction()); $pendingTransaction = new FinancialTransaction(); $pendingTransaction->setState(FinancialTransactionInterface::STATE_PENDING); $credit->addTransaction($pendingTransaction); $this->assertTrue($credit->hasPendingTransaction()); $transaction = new FinancialTransaction(); $credit->addTransaction($transaction); $this->assertTrue($credit->hasPendingTransaction()); $this->assertSame($pendingTransaction, $credit->getPendingTransaction()); }
/** * @expectedException JMS\Payment\CoreBundle\PluginController\Exception\InvalidPaymentInstructionException */ public function testApproveAndDepositThrowsExceptionWhenPaymentInstructionHasPendingTransaction() { $controller = $this->getController(); $payment = $this->getPayment(); $payment->getPaymentInstruction()->setState(PaymentInstructionInterface::STATE_VALID); $transaction = new FinancialTransaction(); $transaction->setState(FinancialTransactionInterface::STATE_PENDING); $payment->addTransaction($transaction); $this->callApproveAndDeposit($controller, array($payment, 100)); }
public function testHasPendingTransaction() { $payment = new Payment($this->getInstruction(), 123); $this->assertFalse($payment->hasPendingTransaction()); $transaction = new FinancialTransaction(); $payment->addTransaction($transaction); $this->assertFalse($payment->hasPendingTransaction()); $transaction = new FinancialTransaction(); $transaction->setState(FinancialTransaction::STATE_PENDING); $payment->addTransaction($transaction); $this->assertTrue($payment->hasPendingTransaction()); }