public function setUp() { parent::setUp(); $bankAccount = new BankAccount(); $bankAccount->setType(BankAccount::TYPE_NORMAL); $bankAccount->setBankName('ミツイスミトモ'); $bankAccount->setBankCode('0009'); $bankAccount->setBranchName('アカサカ'); $bankAccount->setBranchCode('825'); $bankAccount->setHolderName('スラビ'); $bankAccount->setNumber('9876543'); $bankAccount->setCompanyCode('1234560789'); $this->transaction = new MoneyTransferTransaction(); $this->transaction->setDestinationBankAccount($bankAccount); $this->transaction->setAmount(15234); }
public function setUp() { parent::setUp(); $senderBankAccount = new BankAccount(); $senderBankAccount->setType(BankAccount::TYPE_NORMAL); $senderBankAccount->setBankName('ミツイスミトモ'); $senderBankAccount->setBankCode('0009'); $senderBankAccount->setBranchName('アカサカ'); $senderBankAccount->setBranchCode('825'); $senderBankAccount->setHolderName('スラビ'); $senderBankAccount->setNumber('9876543'); $senderBankAccount->setCompanyCode('1234560789'); $this->transferRequest = new TransferRequest(); $this->transferRequest->setType(TransferRequest::TYPE_GENERAL); $this->transferRequest->setSourceBankAccount($senderBankAccount); $this->transferRequest->setDate(\DateTime::createFromFormat('Y-m-d', '2016-02-25')); $receiverBankAccount = new BankAccount(); $receiverBankAccount->setType(BankAccount::TYPE_NORMAL); $receiverBankAccount->setBankName('トウキョウトミン'); $receiverBankAccount->setHolderName('テストー.カブシキガイシャ'); //Note: using a normal dot/dash in this example $receiverBankAccount->setBankCode('0137'); $receiverBankAccount->setBranchName('シブヤ'); $receiverBankAccount->setBranchCode('031'); $receiverBankAccount->setNumber('1231990'); $receiverTransaction = new MoneyTransferTransaction(); $receiverTransaction->setDestinationBankAccount($receiverBankAccount); $receiverTransaction->setAmount(1103661); $this->transferRequest->addTransaction($receiverTransaction); $receiverBankAccount = new BankAccount(); $receiverBankAccount->setType(BankAccount::TYPE_NORMAL); $receiverBankAccount->setBankName('ベツバンク'); $receiverBankAccount->setHolderName('ヒトノナマエ'); //Note: using a normal dot/dash in this example $receiverBankAccount->setBankCode('0132'); $receiverBankAccount->setBranchName('イケブクロ'); $receiverBankAccount->setBranchCode('021'); $receiverBankAccount->setNumber('1331990'); $receiverTransaction = new MoneyTransferTransaction(); $receiverTransaction->setDestinationBankAccount($receiverBankAccount); $receiverTransaction->setAmount(657856); $this->transferRequest->addTransaction($receiverTransaction); }
public function testValidationFailsOnNon4DigitBankCodes() { $this->account->setBankCode('12345'); $this->assertSame('12345', $this->account->getBankCode()); $violations = Validator::validateBankAccount($this->account, null); $this->assertTrue(count($violations) === 1); $this->assertTrue(count($violations->get('bankCode')) === 1); $this->account->setBankCode('1234 '); $this->assertSame('1234 ', $this->account->getBankCode()); $violations = Validator::validateBankAccount($this->account, null); $this->assertTrue(count($violations) === 1); $this->assertTrue(count($violations->get('bankCode')) === 1); $this->account->setBankCode('123'); $this->assertSame('123', $this->account->getBankCode()); $violations = Validator::validateBankAccount($this->account, null); $this->assertTrue(count($violations) === 1); $this->assertTrue(count($violations->get('bankCode')) === 1); $this->account->setBankCode('1234'); $this->assertSame('1234', $this->account->getBankCode()); $violations = Validator::validateBankAccount($this->account, null); $this->assertTrue(count($violations) === 1); $this->assertTrue(count($violations->get('bankCode')) === 1); $this->account->setBankCode('1234'); $this->assertSame('1234', $this->account->getBankCode()); $violations = Validator::validateBankAccount($this->account, null); $this->assertTrue(count($violations) === 0); $this->account->setBankCode(''); $this->assertSame('', $this->account->getBankCode()); $violations = Validator::validateBankAccount($this->account, null); $this->assertTrue(count($violations) === 1); $this->assertTrue(count($violations->get('bankCode')) === 1); $this->account->setBankCode(null); $this->assertSame(null, $this->account->getBankCode()); $violations = Validator::validateBankAccount($this->account, null); $this->assertTrue(count($violations) === 1); $this->assertTrue(count($violations->get('bankCode')) === 1); }
public function testMultiTransaction() { $transferRequest = new TransferRequest(); $transferRequest->setType(TransferRequest::TYPE_GENERAL); $transferRequest->setSourceBankAccount($this->account); $transferRequest->setDate(\DateTime::createFromFormat('Y-m-d', '2016-03-12')); $receiverBankAccount = new BankAccount(); $receiverBankAccount->setType(BankAccount::TYPE_CURRENT); $receiverBankAccount->setBankName('トウキョウトミン'); $receiverBankAccount->setHolderName('テストー.カブシキガイシャ'); //Note: using a normal dot/dash in this example $receiverBankAccount->setBankCode('0137'); $receiverBankAccount->setBranchName('シブヤ'); $receiverBankAccount->setBranchCode('031'); $receiverBankAccount->setNumber('1231990'); $violations = Validator::validateBankAccount($receiverBankAccount, Validator::BANK_ACCOUNT_ROLE_RECEIVER); $this->assertTrue(count($violations) === 0); $receiverTransaction = new MoneyTransferTransaction(); $receiverTransaction->setDestinationBankAccount($receiverBankAccount); $receiverTransaction->setAmount(1103661); $violations = Validator::validateMoneyTransferTransaction($receiverTransaction); $this->assertTrue(count($violations) === 0); $transferRequest->addTransaction($receiverTransaction); $receiverBankAccount = new BankAccount(); $receiverBankAccount->setType(BankAccount::TYPE_NORMAL); $receiverBankAccount->setBankName('ミツビシトウキョウUFJ'); $receiverBankAccount->setHolderName('カ)ゼンギン'); //Note: using a normal dot in this example $receiverBankAccount->setBankCode('0005'); $receiverBankAccount->setBranchName('ギンザドオリ'); $receiverBankAccount->setBranchCode('024'); $receiverBankAccount->setNumber('2275535'); $violations = Validator::validateBankAccount($receiverBankAccount, Validator::BANK_ACCOUNT_ROLE_RECEIVER); $this->assertTrue(count($violations) === 0); $receiverTransaction = new MoneyTransferTransaction(); $receiverTransaction->setDestinationBankAccount($receiverBankAccount); $receiverTransaction->setAmount(599300); $violations = Validator::validateMoneyTransferTransaction($receiverTransaction); $this->assertTrue(count($violations) === 0); $transferRequest->addTransaction($receiverTransaction); $zenginContentShiftJis = $this->generator->generate($transferRequest); //Let's verify that ミツビシトウキョウUFJ "small" (full-width + latin + small voiced) is converted correctly. //We do compare to the result file below, but we'd like to explicitly check for this beforehand anyway. $zenginContentUtf = \mb_convert_encoding($zenginContentShiftJis, 'utf-8', 'cp932'); $this->assertTrue(str_replace('ミツビシトウキヨウUFJ', '', $zenginContentUtf) !== $zenginContentUtf); $this->assertTrue(str_replace(1103661 + 599300, '', $zenginContentUtf) !== $zenginContentUtf, "Cannot find total amount."); $this->validateZenginContent($zenginContentShiftJis, 'results/multi-transaction.txt'); }