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}");
}
}
ユニットクラスはmy xmlにdefineのインスタンスを持っています。hibernateバリデーター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である必要があります。うん、誤りを指摘してくれてありがとう。私はカード番号ではなく説明を設定していたので、決して検証されませんでした。 –