Author: epbernard
Date: 2009-09-09 07:59:45 -0400 (Wed, 09 Sep 2009)
New Revision: 17495
Modified:
beanvalidation/trunk/validation-tck/src/main/java/org/hibernate/jsr303/tck/tests/metadata/ConstraintDescriptorTest.java
beanvalidation/trunk/validation-tck/src/main/java/org/hibernate/jsr303/tck/tests/metadata/NotEmpty.java
Log:
Add tests for payload assertions in composing contraints
Modified:
beanvalidation/trunk/validation-tck/src/main/java/org/hibernate/jsr303/tck/tests/metadata/ConstraintDescriptorTest.java
===================================================================
---
beanvalidation/trunk/validation-tck/src/main/java/org/hibernate/jsr303/tck/tests/metadata/ConstraintDescriptorTest.java 2009-09-09
10:27:33 UTC (rev 17494)
+++
beanvalidation/trunk/validation-tck/src/main/java/org/hibernate/jsr303/tck/tests/metadata/ConstraintDescriptorTest.java 2009-09-09
11:59:45 UTC (rev 17495)
@@ -72,8 +72,10 @@
ConstraintDescriptor<?> descriptor = getConstraintDescriptor( Person.class,
"firstName" );
Set<ConstraintDescriptor<?>> composingDescriptors =
descriptor.getComposingConstraints();
assertEquals( composingDescriptors.size(), 2, "Wrong number of composing
constraints" );
+ boolean hasSize = false;
for ( ConstraintDescriptor<?> desc : composingDescriptors ) {
if ( desc.getAnnotation().annotationType().equals( Size.class ) ) {
+ hasSize = true;
Size sizeAnn = ( Size ) desc.getAnnotation();
assertEquals( sizeAnn.min(), 5, "The min parameter should reflect the overridden
parameter" );
assertEquals(
@@ -86,6 +88,7 @@
fail( "Unexpected annotation." );
}
}
+ assertTrue(hasSize, "Size composed annotation not found");
}
@Test
@@ -150,6 +153,21 @@
}
@Test
+ @SpecAssertions({
+ @SpecAssertion(section = "5.5", id = "h"),
+ @SpecAssertion(section = "5.5", id = "i")
+ })
+ public void testComposingConstraintsPayload() {
+ ConstraintDescriptor<?> descriptor = getConstraintDescriptor( Person.class,
"firstName" );
+ Set<ConstraintDescriptor<?>> composingDescriptors =
descriptor.getComposingConstraints();
+ assertEquals( composingDescriptors.size(), 2, "Wrong number of composing
constraints" );
+ for ( ConstraintDescriptor<?> desc : composingDescriptors ) {
+ assertTrue( desc.getGroups().size() == 1 );
+ assertEquals( desc.getPayload().iterator().next(), Severity.Info.class, "Wrong
payload" );
+ }
+ }
+
+ @Test
@SpecAssertion(section = "5.5", id = "g")
public void testPayload() {
ConstraintDescriptor<?> descriptor = getConstraintDescriptor( Person.class,
"firstName" );
Modified:
beanvalidation/trunk/validation-tck/src/main/java/org/hibernate/jsr303/tck/tests/metadata/NotEmpty.java
===================================================================
---
beanvalidation/trunk/validation-tck/src/main/java/org/hibernate/jsr303/tck/tests/metadata/NotEmpty.java 2009-09-09
10:27:33 UTC (rev 17494)
+++
beanvalidation/trunk/validation-tck/src/main/java/org/hibernate/jsr303/tck/tests/metadata/NotEmpty.java 2009-09-09
11:59:45 UTC (rev 17495)
@@ -38,7 +38,7 @@
@Target({ METHOD, FIELD })
@Retention(RUNTIME)
@ReportAsSingleViolation
-@NotNull
+@NotNull(payload= NotEmpty.UnusedPayload.class)
@Size
public @interface NotEmpty {
public abstract String message() default "cannot be empty";
@@ -49,4 +49,6 @@
@OverridesAttribute(constraint = Size.class, name = "min")
public abstract int min() default 5;
+
+ static class UnusedPayload implements Payload {}
}
\ No newline at end of file
Show replies by date