0
@Autowired
private Validator validator;
@Test
public void testValidateMethodOfPaymentBadCreditCard() {
final MethodOfPayment mop = new MethodOfPayment();
command.setDescription("1234567890");
final Set<ConstraintViolation<MethodOfPayment>> constraintViolations = this.validator.validateProperty(mop, "cardNumber", Default.class);
Assert.assertFalse(constraintViolations.isEmpty());
for (final ConstraintViolation<MethodOfPayment> cv : constraintViolations) {
Assert.assertEquals(cv.getMessage(), "{error.invalid.cardNumber}");
}
}
單位類在我的xml中有define的實例。休眠驗證器4.2.0最終@CreditCardNumber
<bean id="validator" class="org.springframework.validation.beanvalidation.LocalValidatorFactoryBean"/>
我methodofpayment標註有
@CreditCardNumber(message="{error.invalid.cardNumber}")
public String getCardNumber() {
return this.cardNumber;
}
上線說違反約束爲空,此測試失敗。我認爲它不應該是空的嗎?
出了什麼問題? 什麼樣的數據無法進行信用卡驗證?
嗨,命令應該是mop.setDescription。是的,謝謝你指出錯誤。我設置的描述不是卡號,因此它從未被驗證過。 –