private function generateHeaderLine(TransferRequest $request) { $items = array(); $items[] = array('%1d', self::RECORD_HEADER); $items[] = array('%2d', self::resolveTransferRequestType($request->getType())); $items[] = array('%1d', self::CHARSET_JIS); $items[] = array('%010d', $request->getSourceBankAccount()->getCompanyCode()); $holderName = $request->getSourceBankAccount()->getHolderName(); $holderNameHalfWidth = StringUtil::convertFullWidthToHalfWidthKana($holderName); $items[] = array('%s', StringUtil::stringPadRight($holderNameHalfWidth, 40, ' ')); $items[] = array('%02d', $request->getDate()->format('m')); $items[] = array('%02d', $request->getDate()->format('d')); $items[] = array('%04d', $request->getSourceBankAccount()->getBankCode()); $bankName = $request->getSourceBankAccount()->getBankName(); $bankNameHalfWidth = StringUtil::convertFullWidthToHalfWidthKana($bankName); $items[] = array('%s', StringUtil::stringPadRight($bankNameHalfWidth, 15, ' ')); $items[] = array('%03d', $request->getSourceBankAccount()->getBranchCode()); $branchName = $request->getSourceBankAccount()->getBranchName(); $branchNameHalfWidth = StringUtil::convertFullWidthToHalfWidthKana($branchName); $items[] = array('%s', StringUtil::stringPadRight($branchNameHalfWidth, 15, ' ')); $items[] = array('%1d', self::resolveBankAccountType($request->getSourceBankAccount()->getType())); $items[] = array('%07d', $request->getSourceBankAccount()->getNumber()); $items[] = array('%s', str_repeat(' ', 17)); return StringUtil::sprintfItemGroupsToString($items); }
public function testValidationFailsWithMissingDate() { $this->transferRequest->setDate(null); $this->assertSame(null, $this->transferRequest->getDate()); $violations = Validator::validateTransferRequest($this->transferRequest); $this->assertTrue(count($violations) === 1); $this->assertTrue(count($violations->get('date')) === 1); }