You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@bval.apache.org by mb...@apache.org on 2011/01/31 22:54:23 UTC

svn commit: r1065813 - in /incubator/bval/sandbox/lang3-work/bval-jsr303/src: main/java/org/apache/bval/jsr303/ClassValidator.java test/java/org/apache/bval/jsr303/ExceptionsContractTest.java

Author: mbenson
Date: Mon Jan 31 21:54:23 2011
New Revision: 1065813

URL: http://svn.apache.org/viewvc?rev=1065813&view=rev
Log:
TCK ValidateValueTest.testExistingPropertyWoConstraintsNorCascaded

Modified:
    incubator/bval/sandbox/lang3-work/bval-jsr303/src/main/java/org/apache/bval/jsr303/ClassValidator.java
    incubator/bval/sandbox/lang3-work/bval-jsr303/src/test/java/org/apache/bval/jsr303/ExceptionsContractTest.java

Modified: incubator/bval/sandbox/lang3-work/bval-jsr303/src/main/java/org/apache/bval/jsr303/ClassValidator.java
URL: http://svn.apache.org/viewvc/incubator/bval/sandbox/lang3-work/bval-jsr303/src/main/java/org/apache/bval/jsr303/ClassValidator.java?rev=1065813&r1=1065812&r2=1065813&view=diff
==============================================================================
--- incubator/bval/sandbox/lang3-work/bval-jsr303/src/main/java/org/apache/bval/jsr303/ClassValidator.java (original)
+++ incubator/bval/sandbox/lang3-work/bval-jsr303/src/main/java/org/apache/bval/jsr303/ClassValidator.java Mon Jan 31 21:54:23 2011
@@ -20,6 +20,7 @@ package org.apache.bval.jsr303;
 
 import java.lang.reflect.Modifier;
 import java.util.ArrayList;
+import java.util.Collections;
 import java.util.List;
 import java.util.Set;
 import javax.validation.ConstraintViolation;
@@ -39,10 +40,12 @@ import org.apache.bval.jsr303.util.PathI
 import org.apache.bval.jsr303.util.PathNavigation;
 import org.apache.bval.jsr303.util.SecureActions;
 import org.apache.bval.model.Features;
+import org.apache.bval.model.FeaturesCapable;
 import org.apache.bval.model.MetaBean;
 import org.apache.bval.model.MetaProperty;
 import org.apache.bval.util.AccessStrategy;
 import org.apache.bval.util.ValidationHelper;
+import org.apache.commons.lang3.ArrayUtils;
 import org.apache.commons.lang3.ClassUtils;
 import org.apache.commons.lang3.ObjectUtils;
 import org.apache.commons.lang3.reflect.TypeUtils;
@@ -711,6 +714,14 @@ public class ClassValidator implements C
             MetaProperty prop = context.getMetaProperty();
             boolean fixed = false;
             if (value != VALIDATE_PROPERTY) {
+                assert !context.getPropertyPath().isRootPath();
+                if (!cascade) {
+                    //TCK doesn't care what type a property is if there are no constraints to validate:
+                    FeaturesCapable meta = prop == null ? context.getMetaBean() : prop;
+                    if (ArrayUtils.isEmpty(meta.getValidations())) {
+                        return Collections.<ConstraintViolation<T>> emptySet();
+                    }
+                }
                 if (!TypeUtils.isAssignable(value == null ? null : value.getClass(), contextTraversal.getType())) {
                     throw new IncompatiblePropertyValueException(String.format(
                         "%3$s is not a valid value for property %2$s of type %1$s", beanType, propertyName, value));

Modified: incubator/bval/sandbox/lang3-work/bval-jsr303/src/test/java/org/apache/bval/jsr303/ExceptionsContractTest.java
URL: http://svn.apache.org/viewvc/incubator/bval/sandbox/lang3-work/bval-jsr303/src/test/java/org/apache/bval/jsr303/ExceptionsContractTest.java?rev=1065813&r1=1065812&r2=1065813&view=diff
==============================================================================
--- incubator/bval/sandbox/lang3-work/bval-jsr303/src/test/java/org/apache/bval/jsr303/ExceptionsContractTest.java (original)
+++ incubator/bval/sandbox/lang3-work/bval-jsr303/src/test/java/org/apache/bval/jsr303/ExceptionsContractTest.java Mon Jan 31 21:54:23 2011
@@ -25,6 +25,7 @@ import javax.validation.Validation;
 import javax.validation.ValidationException;
 import javax.validation.Validator;
 import javax.validation.ValidatorFactory;
+import javax.validation.constraints.Min;
 import javax.validation.constraints.NotNull;
 import javax.validation.metadata.BeanDescriptor;
 import java.util.Locale;
@@ -262,6 +263,7 @@ public class ExceptionsContractTest exte
         @NotNull
         public String name;
 
+        @Min(0)
         public int age;
     }