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); }