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。是的,谢谢你指出错误。我设置的描述不是卡号,因此它从未被验证过。 –