Author: hardy.ferentschik
Date: 2009-08-19 06:20:17 -0400 (Wed, 19 Aug 2009)
New Revision: 17356
Added:
beanvalidation/trunk/validation-tck/src/main/java/org/hibernate/jsr303/tck/tests/xmlconfiguration/ConfigurationDefinedMessageInterpolator.java
beanvalidation/trunk/validation-tck/src/main/java/org/hibernate/jsr303/tck/tests/xmlconfiguration/DefaultProviderSpecifiedInValidationXmlTest.java
beanvalidation/trunk/validation-tck/src/main/java/org/hibernate/jsr303/tck/tests/xmlconfiguration/MessageInterpolatorSpecifiedInValidationXmlTest.java
beanvalidation/trunk/validation-tck/src/main/java/org/hibernate/jsr303/tck/tests/xmlconfiguration/OptionalValidationXmlTest.java
beanvalidation/trunk/validation-tck/src/main/java/org/hibernate/jsr303/tck/tests/xmlconfiguration/XmlDefinedMessageInterpolator.java
beanvalidation/trunk/validation-tck/src/main/resources/org/hibernate/jsr303/tck/tests/xmlconfiguration/user-constraints-MultipleBeanDefinitionTest.xml
beanvalidation/trunk/validation-tck/src/main/resources/org/hibernate/jsr303/tck/tests/xmlconfiguration/validation-DefaultProviderSpecifiedInValidationXmlTest.xml
beanvalidation/trunk/validation-tck/src/main/resources/org/hibernate/jsr303/tck/tests/xmlconfiguration/validation-MessageInterpolatorSpecifiedInValidationXmlTest.xml
Removed:
beanvalidation/trunk/validation-tck/src/main/resources/org/hibernate/jsr303/tck/tests/xmlconfiguration/user-constraints-copy.xml
Modified:
beanvalidation/trunk/validation-tck/src/main/java/org/hibernate/jsr303/tck/tests/xmlconfiguration/MultipleBeanDefinitionTest.java
beanvalidation/trunk/validation-tck/src/main/java/org/hibernate/jsr303/tck/tests/xmlconfiguration/MultipleFieldDefinitionTest.java
beanvalidation/trunk/validation-tck/src/main/java/org/hibernate/jsr303/tck/tests/xmlconfiguration/MultipleGetterDefinitionTest.java
beanvalidation/trunk/validation-tck/src/main/java/org/hibernate/jsr303/tck/tests/xmlconfiguration/XmlConfigurationTest.java
beanvalidation/trunk/validation-tck/src/main/resources/org/hibernate/jsr303/tck/tests/xmlconfiguration/validation-MultipleBeanDefinitionTest.xml
beanvalidation/trunk/validation-tck/src/main/resources/tck-audit.xml
Log:
xml configuration tests
Added:
beanvalidation/trunk/validation-tck/src/main/java/org/hibernate/jsr303/tck/tests/xmlconfiguration/ConfigurationDefinedMessageInterpolator.java
===================================================================
---
beanvalidation/trunk/validation-tck/src/main/java/org/hibernate/jsr303/tck/tests/xmlconfiguration/ConfigurationDefinedMessageInterpolator.java
(rev 0)
+++
beanvalidation/trunk/validation-tck/src/main/java/org/hibernate/jsr303/tck/tests/xmlconfiguration/ConfigurationDefinedMessageInterpolator.java 2009-08-19
10:20:17 UTC (rev 17356)
@@ -0,0 +1,36 @@
+// $Id:$
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2008, Red Hat Middleware LLC, and individual contributors
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* Licensed under the Apache License, Version 2.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+*
http://www.apache.org/licenses/LICENSE-2.0
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*/
+package org.hibernate.jsr303.tck.tests.xmlconfiguration;
+
+import java.util.Locale;
+import javax.validation.MessageInterpolator;
+
+/**
+ * @author Hardy Ferentschik
+ */
+public class ConfigurationDefinedMessageInterpolator implements MessageInterpolator {
+ public static final String STATIC_INTERPOLATION_STRING = "Interpolator defined in
Configuration was used.";
+
+ public String interpolate(String messageTemplate, Context context) {
+ return STATIC_INTERPOLATION_STRING;
+ }
+
+ public String interpolate(String messageTemplate, Context context, Locale locale) {
+ return STATIC_INTERPOLATION_STRING;
+ }
+}
\ No newline at end of file
Copied:
beanvalidation/trunk/validation-tck/src/main/java/org/hibernate/jsr303/tck/tests/xmlconfiguration/DefaultProviderSpecifiedInValidationXmlTest.java
(from rev 17352,
beanvalidation/trunk/validation-tck/src/main/java/org/hibernate/jsr303/tck/tests/xmlconfiguration/InvalidXmlConfigurationTest.java)
===================================================================
---
beanvalidation/trunk/validation-tck/src/main/java/org/hibernate/jsr303/tck/tests/xmlconfiguration/DefaultProviderSpecifiedInValidationXmlTest.java
(rev 0)
+++
beanvalidation/trunk/validation-tck/src/main/java/org/hibernate/jsr303/tck/tests/xmlconfiguration/DefaultProviderSpecifiedInValidationXmlTest.java 2009-08-19
10:20:17 UTC (rev 17356)
@@ -0,0 +1,81 @@
+// $Id$
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2008, Red Hat Middleware LLC, and individual contributors
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* Licensed under the Apache License, Version 2.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+*
http://www.apache.org/licenses/LICENSE-2.0
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*/
+package org.hibernate.jsr303.tck.tests.xmlconfiguration;
+
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.validation.Configuration;
+import javax.validation.Validation;
+import javax.validation.ValidationProviderResolver;
+import javax.validation.ValidatorFactory;
+import javax.validation.spi.ValidationProvider;
+
+import org.jboss.test.audit.annotations.SpecAssertion;
+import org.jboss.test.audit.annotations.SpecAssertions;
+import org.jboss.testharness.AbstractTest;
+import org.jboss.testharness.impl.packaging.Artifact;
+import org.jboss.testharness.impl.packaging.ArtifactType;
+import org.jboss.testharness.impl.packaging.Classes;
+import org.jboss.testharness.impl.packaging.jsr303.ValidationXml;
+import static org.testng.Assert.assertTrue;
+import org.testng.annotations.Test;
+
+import org.hibernate.jsr303.tck.common.TCKValidationProvider;
+import org.hibernate.jsr303.tck.common.TCKValidatorConfiguration;
+import org.hibernate.jsr303.tck.util.TestUtil;
+
+/**
+ * @author Hardy Ferentschik
+ */
+@Artifact(artifactType = ArtifactType.JSR303)
+@Classes({
+ TestUtil.class,
+ TestUtil.PathImpl.class,
+ TestUtil.NodeImpl.class,
+ TCKValidationProvider.class,
+ TCKValidatorConfiguration.class,
+ TCKValidationProvider.DummyValidatorFactory.class
+})
+@ValidationXml(value =
"validation-DefaultProviderSpecifiedInValidationXmlTest.xml")
+public class DefaultProviderSpecifiedInValidationXmlTest extends AbstractTest {
+
+ @Test
+ @SpecAssertions({
+ @SpecAssertion(section = "4.4.6", id = "f"),
+ @SpecAssertion(section = "4.4.6", id = "j")
+ })
+ public void testProviderSpecifiedInValidationXml() {
+ ValidationProviderResolver resolver = new ValidationProviderResolver() {
+
+ public List<ValidationProvider<?>> getValidationProviders() {
+ List<ValidationProvider<?>> list = new
ArrayList<ValidationProvider<?>>();
+ list.add( TestUtil.getValidationProviderUnderTest() );
+ list.add( new TCKValidationProvider() );
+ return list;
+ }
+ };
+
+ Configuration<?> configuration = Validation
+ .byDefaultProvider()
+ .providerResolver( resolver )
+ .configure();
+ ValidatorFactory factory = configuration.buildValidatorFactory();
+ assertTrue( factory instanceof TCKValidationProvider.DummyValidatorFactory );
+ }
+}
\ No newline at end of file
Property changes on:
beanvalidation/trunk/validation-tck/src/main/java/org/hibernate/jsr303/tck/tests/xmlconfiguration/DefaultProviderSpecifiedInValidationXmlTest.java
___________________________________________________________________
Name: svn:keywords
+ Id
Name: svn:eol-style
+ native
Added:
beanvalidation/trunk/validation-tck/src/main/java/org/hibernate/jsr303/tck/tests/xmlconfiguration/MessageInterpolatorSpecifiedInValidationXmlTest.java
===================================================================
---
beanvalidation/trunk/validation-tck/src/main/java/org/hibernate/jsr303/tck/tests/xmlconfiguration/MessageInterpolatorSpecifiedInValidationXmlTest.java
(rev 0)
+++
beanvalidation/trunk/validation-tck/src/main/java/org/hibernate/jsr303/tck/tests/xmlconfiguration/MessageInterpolatorSpecifiedInValidationXmlTest.java 2009-08-19
10:20:17 UTC (rev 17356)
@@ -0,0 +1,88 @@
+// $Id: InvalidXmlConfigurationTest.java 17352 2009-08-18 17:08:59Z hardy.ferentschik $
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2008, Red Hat Middleware LLC, and individual contributors
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* Licensed under the Apache License, Version 2.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+*
http://www.apache.org/licenses/LICENSE-2.0
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*/
+package org.hibernate.jsr303.tck.tests.xmlconfiguration;
+
+
+import java.util.Set;
+import javax.validation.Configuration;
+import javax.validation.ConstraintViolation;
+import javax.validation.Validation;
+import javax.validation.Validator;
+
+import org.jboss.test.audit.annotations.SpecAssertion;
+import org.jboss.test.audit.annotations.SpecAssertions;
+import org.jboss.testharness.AbstractTest;
+import org.jboss.testharness.impl.packaging.Artifact;
+import org.jboss.testharness.impl.packaging.ArtifactType;
+import org.jboss.testharness.impl.packaging.Classes;
+import org.jboss.testharness.impl.packaging.jsr303.ValidationXml;
+import org.testng.annotations.Test;
+
+import org.hibernate.jsr303.tck.common.TCKValidationProvider;
+import org.hibernate.jsr303.tck.common.TCKValidatorConfiguration;
+import org.hibernate.jsr303.tck.util.TestUtil;
+import static
org.hibernate.jsr303.tck.util.TestUtil.assertCorrectConstraintViolationMessages;
+import static org.hibernate.jsr303.tck.util.TestUtil.assertCorrectNumberOfViolations;
+
+/**
+ * @author Hardy Ferentschik
+ */
+@Artifact(artifactType = ArtifactType.JSR303)
+@Classes({
+ TestUtil.class,
+ TestUtil.PathImpl.class,
+ TestUtil.NodeImpl.class,
+ TCKValidationProvider.class,
+ TCKValidatorConfiguration.class,
+ TCKValidationProvider.DummyValidatorFactory.class
+})
+@ValidationXml(value =
"validation-MessageInterpolatorSpecifiedInValidationXmlTest.xml")
+public class MessageInterpolatorSpecifiedInValidationXmlTest extends AbstractTest {
+
+ @Test
+ @SpecAssertion(section = "4.4.6", id = "g")
+ public void testMessageInterpolatorSpecifiedInValidationXml() {
+ Validator validator = TestUtil.getValidatorUnderTest();
+
+ User user = new User();
+ Set<ConstraintViolation<User>> constraintViolations = validator.validate(
user );
+ assertCorrectNumberOfViolations( constraintViolations, 1 );
+ assertCorrectConstraintViolationMessages(
+ constraintViolations, XmlDefinedMessageInterpolator.STATIC_INTERPOLATION_STRING
+ );
+ }
+
+ @Test
+ @SpecAssertions({
+ @SpecAssertion(section = "4.4.6", id = "e"),
+ @SpecAssertion(section = "4.4.6", id = "g")
+ })
+ public void testMessageInterpolatorSpecifiedInValidationXmlCanBeOverridden() {
+ Configuration<?> configuration = Validation
+ .byDefaultProvider()
+ .configure().messageInterpolator( new ConfigurationDefinedMessageInterpolator() );
+ Validator validator = configuration.buildValidatorFactory().getValidator();
+
+ User user = new User();
+ Set<ConstraintViolation<User>> constraintViolations = validator.validate(
user );
+ assertCorrectNumberOfViolations( constraintViolations, 1 );
+ assertCorrectConstraintViolationMessages(
+ constraintViolations,
ConfigurationDefinedMessageInterpolator.STATIC_INTERPOLATION_STRING
+ );
+ }
+}
\ No newline at end of file
Modified:
beanvalidation/trunk/validation-tck/src/main/java/org/hibernate/jsr303/tck/tests/xmlconfiguration/MultipleBeanDefinitionTest.java
===================================================================
---
beanvalidation/trunk/validation-tck/src/main/java/org/hibernate/jsr303/tck/tests/xmlconfiguration/MultipleBeanDefinitionTest.java 2009-08-18
19:48:57 UTC (rev 17355)
+++
beanvalidation/trunk/validation-tck/src/main/java/org/hibernate/jsr303/tck/tests/xmlconfiguration/MultipleBeanDefinitionTest.java 2009-08-19
10:20:17 UTC (rev 17356)
@@ -26,6 +26,8 @@
import org.jboss.testharness.impl.packaging.Artifact;
import org.jboss.testharness.impl.packaging.ArtifactType;
import org.jboss.testharness.impl.packaging.Classes;
+import org.jboss.testharness.impl.packaging.Resource;
+import org.jboss.testharness.impl.packaging.Resources;
import org.jboss.testharness.impl.packaging.jsr303.ValidationXml;
import static org.testng.Assert.fail;
import org.testng.annotations.Test;
@@ -38,6 +40,14 @@
@Artifact(artifactType = ArtifactType.JSR303)
@Classes({ TestUtil.class, TestUtil.PathImpl.class, TestUtil.NodeImpl.class })
@ValidationXml(value = "validation-MultipleBeanDefinitionTest.xml")
+@Resources(
+ {
+ @Resource(source = "user-constraints.xml",
+ destination =
"WEB-INF/classes/org/hibernate/jsr303/tck/tests/xmlconfiguration/user-constraints.xml"),
+ @Resource(source = "user-constraints-MultipleBeanDefinitionTest.xml",
+ destination =
"WEB-INF/classes/org/hibernate/jsr303/tck/tests/xmlconfiguration/user-constraints-MultipleBeanDefinitionTest.xml")
+ }
+)
public class MultipleBeanDefinitionTest extends AbstractTest {
@Test
@@ -48,7 +58,7 @@
public void testBeanCannotBeDescribedMoreThanOnce() {
try {
TestUtil.getValidatorUnderTest();
- fail();
+ fail( "You should not be able to define the same bean multiple times." );
}
catch ( ValidationException e ) {
// success
Modified:
beanvalidation/trunk/validation-tck/src/main/java/org/hibernate/jsr303/tck/tests/xmlconfiguration/MultipleFieldDefinitionTest.java
===================================================================
---
beanvalidation/trunk/validation-tck/src/main/java/org/hibernate/jsr303/tck/tests/xmlconfiguration/MultipleFieldDefinitionTest.java 2009-08-18
19:48:57 UTC (rev 17355)
+++
beanvalidation/trunk/validation-tck/src/main/java/org/hibernate/jsr303/tck/tests/xmlconfiguration/MultipleFieldDefinitionTest.java 2009-08-19
10:20:17 UTC (rev 17356)
@@ -26,6 +26,7 @@
import org.jboss.testharness.impl.packaging.Artifact;
import org.jboss.testharness.impl.packaging.ArtifactType;
import org.jboss.testharness.impl.packaging.Classes;
+import org.jboss.testharness.impl.packaging.Resource;
import org.jboss.testharness.impl.packaging.jsr303.ValidationXml;
import static org.testng.Assert.fail;
import org.testng.annotations.Test;
@@ -38,6 +39,8 @@
@Artifact(artifactType = ArtifactType.JSR303)
@Classes({ TestUtil.class, TestUtil.PathImpl.class, TestUtil.NodeImpl.class })
@ValidationXml(value = "validation-MultipleFieldDefinitionTest.xml")
+@Resource(source = "user-constraints-MultipleFieldDefinitionTest.xml",
+ destination =
"WEB-INF/classes/org/hibernate/jsr303/tck/tests/xmlconfiguration/user-constraints-MultipleFieldDefinitionTest.xml")
public class MultipleFieldDefinitionTest extends AbstractTest {
@Test
@@ -48,7 +51,7 @@
public void testFieldMappingCannotOccurMoreThanOnce() {
try {
TestUtil.getValidatorUnderTest();
- fail("You should not be able to define multiple field mappings per
entity");
+ fail( "You should not be able to define multiple field mappings per entity"
);
}
catch ( ValidationException e ) {
// success
Modified:
beanvalidation/trunk/validation-tck/src/main/java/org/hibernate/jsr303/tck/tests/xmlconfiguration/MultipleGetterDefinitionTest.java
===================================================================
---
beanvalidation/trunk/validation-tck/src/main/java/org/hibernate/jsr303/tck/tests/xmlconfiguration/MultipleGetterDefinitionTest.java 2009-08-18
19:48:57 UTC (rev 17355)
+++
beanvalidation/trunk/validation-tck/src/main/java/org/hibernate/jsr303/tck/tests/xmlconfiguration/MultipleGetterDefinitionTest.java 2009-08-19
10:20:17 UTC (rev 17356)
@@ -26,6 +26,7 @@
import org.jboss.testharness.impl.packaging.Artifact;
import org.jboss.testharness.impl.packaging.ArtifactType;
import org.jboss.testharness.impl.packaging.Classes;
+import org.jboss.testharness.impl.packaging.Resource;
import org.jboss.testharness.impl.packaging.jsr303.ValidationXml;
import static org.testng.Assert.fail;
import org.testng.annotations.Test;
@@ -38,6 +39,8 @@
@Artifact(artifactType = ArtifactType.JSR303)
@Classes({ TestUtil.class, TestUtil.PathImpl.class, TestUtil.NodeImpl.class })
@ValidationXml(value = "validation-MultipleGetterDefinitionTest.xml")
+@Resource(source = "user-constraints-MultipleGetterDefinitionTest.xml",
+ destination =
"WEB-INF/classes/org/hibernate/jsr303/tck/tests/xmlconfiguration/user-constraints-MultipleGetterDefinitionTest.xml")
public class MultipleGetterDefinitionTest extends AbstractTest {
@Test
@@ -48,7 +51,7 @@
public void testGetterMappingCannotOccurMoreThanOnce() {
try {
TestUtil.getValidatorUnderTest();
- fail("You should not be able to define multiple getter mappings per
entity");
+ fail( "You should not be able to define multiple getter mappings per entity"
);
}
catch ( ValidationException e ) {
// success
Copied:
beanvalidation/trunk/validation-tck/src/main/java/org/hibernate/jsr303/tck/tests/xmlconfiguration/OptionalValidationXmlTest.java
(from rev 17352,
beanvalidation/trunk/validation-tck/src/main/java/org/hibernate/jsr303/tck/tests/xmlconfiguration/XmlConfigurationTest.java)
===================================================================
---
beanvalidation/trunk/validation-tck/src/main/java/org/hibernate/jsr303/tck/tests/xmlconfiguration/OptionalValidationXmlTest.java
(rev 0)
+++
beanvalidation/trunk/validation-tck/src/main/java/org/hibernate/jsr303/tck/tests/xmlconfiguration/OptionalValidationXmlTest.java 2009-08-19
10:20:17 UTC (rev 17356)
@@ -0,0 +1,53 @@
+// $Id$
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2008, Red Hat Middleware LLC, and individual contributors
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* Licensed under the Apache License, Version 2.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+*
http://www.apache.org/licenses/LICENSE-2.0
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*/
+package org.hibernate.jsr303.tck.tests.xmlconfiguration;
+
+import java.util.Set;
+import javax.validation.ConstraintViolation;
+import javax.validation.Validator;
+
+import org.jboss.test.audit.annotations.SpecAssertion;
+import org.jboss.test.audit.annotations.SpecAssertions;
+import org.jboss.testharness.AbstractTest;
+import org.jboss.testharness.impl.packaging.Artifact;
+import org.jboss.testharness.impl.packaging.ArtifactType;
+import org.jboss.testharness.impl.packaging.Classes;
+import org.testng.annotations.Test;
+
+import org.hibernate.jsr303.tck.util.TestUtil;
+import static org.hibernate.jsr303.tck.util.TestUtil.assertCorrectNumberOfViolations;
+
+/**
+ * @author Hardy Ferentschik
+ */
+@Artifact(artifactType = ArtifactType.JSR303)
+@Classes({ TestUtil.class, TestUtil.PathImpl.class, TestUtil.NodeImpl.class })
+public class OptionalValidationXmlTest extends AbstractTest {
+
+ @Test
+ @SpecAssertions({
+ @SpecAssertion(section = "4.4.6", id = "c")
+ })
+ public void testIgnoreValidationXml() {
+ Validator validator = TestUtil.getValidatorUnderTest();
+
+ Order order = new Order();
+ Set<ConstraintViolation<Order>> constraintViolations = validator.validate(
order );
+ assertCorrectNumberOfViolations( constraintViolations, 0 );
+ }
+}
\ No newline at end of file
Modified:
beanvalidation/trunk/validation-tck/src/main/java/org/hibernate/jsr303/tck/tests/xmlconfiguration/XmlConfigurationTest.java
===================================================================
---
beanvalidation/trunk/validation-tck/src/main/java/org/hibernate/jsr303/tck/tests/xmlconfiguration/XmlConfigurationTest.java 2009-08-18
19:48:57 UTC (rev 17355)
+++
beanvalidation/trunk/validation-tck/src/main/java/org/hibernate/jsr303/tck/tests/xmlconfiguration/XmlConfigurationTest.java 2009-08-19
10:20:17 UTC (rev 17356)
@@ -18,9 +18,12 @@
package org.hibernate.jsr303.tck.tests.xmlconfiguration;
import java.util.Set;
+import javax.validation.Configuration;
import javax.validation.ConstraintViolation;
import javax.validation.Validator;
+import org.jboss.test.audit.annotations.SpecAssertion;
+import org.jboss.test.audit.annotations.SpecAssertions;
import org.jboss.testharness.AbstractTest;
import org.jboss.testharness.impl.packaging.Artifact;
import org.jboss.testharness.impl.packaging.ArtifactType;
@@ -51,6 +54,9 @@
public class XmlConfigurationTest extends AbstractTest {
@Test
+ @SpecAssertions({
+ @SpecAssertion(section = "4.4.6", id = "a")
+ })
public void testClassConstraintDefinedInXml() {
Validator validator = TestUtil.getValidatorUnderTest();
@@ -67,6 +73,22 @@
}
@Test
+ @SpecAssertions({
+ @SpecAssertion(section = "4.4.6", id = "b")
+ })
+ public void testIgnoreValidationXml() {
+ Configuration<?> config = TestUtil.getConfigurationUnderTest();
+ Validator validator =
config.ignoreXmlConfiguration().buildValidatorFactory().getValidator();
+
+ Order order = new Order();
+ Set<ConstraintViolation<Order>> constraintViolations = validator.validate(
order );
+ assertCorrectNumberOfViolations( constraintViolations, 0 );
+ }
+
+ @Test
+ @SpecAssertions({
+ @SpecAssertion(section = "4.4.6", id = "a")
+ })
public void testPropertyConstraintDefinedInXml() {
Validator validator = TestUtil.getValidatorUnderTest();
@@ -84,6 +106,9 @@
}
@Test
+ @SpecAssertions({
+ @SpecAssertion(section = "4.4.6", id = "a")
+ })
public void testFieldConstraintDefinedInXml() {
Validator validator = TestUtil.getValidatorUnderTest();
@@ -104,6 +129,9 @@
}
@Test
+ @SpecAssertions({
+ @SpecAssertion(section = "4.4.6", id = "a")
+ })
public void testAnnotationDefinedConstraintApplies() {
Validator validator = TestUtil.getValidatorUnderTest();
@@ -123,6 +151,9 @@
}
@Test
+ @SpecAssertions({
+ @SpecAssertion(section = "4.4.6", id = "a")
+ })
public void testCascadingConfiguredInXml() {
Validator validator = TestUtil.getValidatorUnderTest();
@@ -140,17 +171,4 @@
constraintViolations = validator.validate( user );
assertCorrectNumberOfViolations( constraintViolations, 0 );
}
-
-// @Test(expectedExceptions = ValidationException.class)
-// public void testInvalidValidationXml() {
-// getValidatorWithCustomConfiguration(
"META-INF/validation-invalid-xmlconfiguration.xmlconfiguration" );
-// }
-//
-// @Test
-// public void testNoDefinedConstraints() {
-// Validator validator = getValidatorWithCustomConfiguration(
"org/hibernate/validation/engine/xmlconfiguration/validation.xmlconfiguration"
);
-// assertFalse(
-// validator.getConstraintsForClass( Order.class ).isBeanConstrained(), "Bean
should be unsonstrained"
-// );
-// }
}
Added:
beanvalidation/trunk/validation-tck/src/main/java/org/hibernate/jsr303/tck/tests/xmlconfiguration/XmlDefinedMessageInterpolator.java
===================================================================
---
beanvalidation/trunk/validation-tck/src/main/java/org/hibernate/jsr303/tck/tests/xmlconfiguration/XmlDefinedMessageInterpolator.java
(rev 0)
+++
beanvalidation/trunk/validation-tck/src/main/java/org/hibernate/jsr303/tck/tests/xmlconfiguration/XmlDefinedMessageInterpolator.java 2009-08-19
10:20:17 UTC (rev 17356)
@@ -0,0 +1,36 @@
+// $Id:$
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2008, Red Hat Middleware LLC, and individual contributors
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* Licensed under the Apache License, Version 2.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+*
http://www.apache.org/licenses/LICENSE-2.0
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*/
+package org.hibernate.jsr303.tck.tests.xmlconfiguration;
+
+import java.util.Locale;
+import javax.validation.MessageInterpolator;
+
+/**
+ * @author Hardy Ferentschik
+ */
+public class XmlDefinedMessageInterpolator implements MessageInterpolator {
+ public static final String STATIC_INTERPOLATION_STRING = "Interpolator defined in
xml was used.";
+
+ public String interpolate(String messageTemplate, Context context) {
+ return STATIC_INTERPOLATION_STRING;
+ }
+
+ public String interpolate(String messageTemplate, Context context, Locale locale) {
+ return STATIC_INTERPOLATION_STRING;
+ }
+}
Copied:
beanvalidation/trunk/validation-tck/src/main/resources/org/hibernate/jsr303/tck/tests/xmlconfiguration/user-constraints-MultipleBeanDefinitionTest.xml
(from rev 17345,
beanvalidation/trunk/validation-tck/src/main/resources/org/hibernate/jsr303/tck/tests/xmlconfiguration/user-constraints-copy.xml)
===================================================================
---
beanvalidation/trunk/validation-tck/src/main/resources/org/hibernate/jsr303/tck/tests/xmlconfiguration/user-constraints-MultipleBeanDefinitionTest.xml
(rev 0)
+++
beanvalidation/trunk/validation-tck/src/main/resources/org/hibernate/jsr303/tck/tests/xmlconfiguration/user-constraints-MultipleBeanDefinitionTest.xml 2009-08-19
10:20:17 UTC (rev 17356)
@@ -0,0 +1,60 @@
+<constraint-mappings
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+
xsi:schemaLocation="http://jboss.org/xml/ns/javax/validation/mapping
validation-mapping-1.0.xsd"
+
xmlns="http://jboss.org/xml/ns/javax/validation/mapping">
+
<default-package>org.hibernate.jsr303.tck.tests.xmlconfiguration</default-package>
+ <bean class="User" ignore-annotations="false">
+ <class ignore-annotations="true">
+ <group-sequence>
+ <value>User</value>
+ <value>Optional</value>
+ </group-sequence>
+ <constraint
annotation="org.hibernate.jsr303.tck.tests.xmlconfiguration.ConsistentUserInformation">
+ <message>Message from xml</message>
+ <groups>
+ <value>javax.validation.groups.Default</value>
+ </groups>
+ <element name="stringParam">foobar</element>
+ <element name="stringArrayParam">
+ <value>foo</value>
+ <value>bar</value>
+ </element>
+ <element name="intParam">
+ <value>42</value>
+ </element>
+ <element name="patterns">
+ <annotation>
+ <element name="regexp">myRegExp1</element>
+ </annotation>
+ <annotation>
+ <element name="regexp">myRegExp2</element>
+ </annotation>
+ </element>
+ <element name="userType">SELLER</element>
+ </constraint>
+ </class>
+ <field name="lastname">
+ <constraint
annotation="javax.validation.constraints.Pattern">
+ <message>Last name has to start with with a capital
letter.</message>
+ <element name="regexp">^[A-Z][a-z]+</element>
+ </constraint>
+ </field>
+ <field name="creditcard">
+ <valid/>
+ </field>
+ <getter name="firstname" ignore-annotations="true">
+ <constraint annotation="javax.validation.constraints.Size">
+ <message>Size is limited!</message>
+ <groups>
+
<value>org.hibernate.jsr303.tck.tests.xmlconfiguration.TestGroup</value>
+ <value>javax.validation.groups.Default</value>
+ </groups>
+ <element name="max">10</element>
+ </constraint>
+ </getter>
+ </bean>
+ <constraint-definition
annotation="org.hibernate.jsr303.tck.tests.xmlconfiguration.ConsistentUserInformation">
+ <validated-by include-existing-validators="false">
+
<value>org.hibernate.jsr303.tck.tests.xmlconfiguration.CustomConsistentUserValidator</value>
+ </validated-by>
+ </constraint-definition>
+</constraint-mappings>
Property changes on:
beanvalidation/trunk/validation-tck/src/main/resources/org/hibernate/jsr303/tck/tests/xmlconfiguration/user-constraints-MultipleBeanDefinitionTest.xml
___________________________________________________________________
Name: svn:keywords
+ Id
Name: svn:eol-style
+ native
Deleted:
beanvalidation/trunk/validation-tck/src/main/resources/org/hibernate/jsr303/tck/tests/xmlconfiguration/user-constraints-copy.xml
===================================================================
---
beanvalidation/trunk/validation-tck/src/main/resources/org/hibernate/jsr303/tck/tests/xmlconfiguration/user-constraints-copy.xml 2009-08-18
19:48:57 UTC (rev 17355)
+++
beanvalidation/trunk/validation-tck/src/main/resources/org/hibernate/jsr303/tck/tests/xmlconfiguration/user-constraints-copy.xml 2009-08-19
10:20:17 UTC (rev 17356)
@@ -1,60 +0,0 @@
-<constraint-mappings
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-
xsi:schemaLocation="http://jboss.org/xml/ns/javax/validation/mapping
validation-mapping-1.0.xsd"
-
xmlns="http://jboss.org/xml/ns/javax/validation/mapping">
-
<default-package>org.hibernate.jsr303.tck.tests.xmlconfiguration</default-package>
- <bean class="User" ignore-annotations="false">
- <class ignore-annotations="true">
- <group-sequence>
- <value>User</value>
- <value>Optional</value>
- </group-sequence>
- <constraint
annotation="org.hibernate.jsr303.tck.tests.xmlconfiguration.ConsistentUserInformation">
- <message>Message from xml</message>
- <groups>
- <value>javax.validation.groups.Default</value>
- </groups>
- <element name="stringParam">foobar</element>
- <element name="stringArrayParam">
- <value>foo</value>
- <value>bar</value>
- </element>
- <element name="intParam">
- <value>42</value>
- </element>
- <element name="patterns">
- <annotation>
- <element name="regexp">myRegExp1</element>
- </annotation>
- <annotation>
- <element name="regexp">myRegExp2</element>
- </annotation>
- </element>
- <element name="userType">SELLER</element>
- </constraint>
- </class>
- <field name="lastname">
- <constraint
annotation="javax.validation.constraints.Pattern">
- <message>Last name has to start with with a capital
letter.</message>
- <element name="regexp">^[A-Z][a-z]+</element>
- </constraint>
- </field>
- <field name="creditcard">
- <valid/>
- </field>
- <getter name="firstname" ignore-annotations="true">
- <constraint annotation="javax.validation.constraints.Size">
- <message>Size is limited!</message>
- <groups>
-
<value>org.hibernate.jsr303.tck.tests.xmlconfiguration.TestGroup</value>
- <value>javax.validation.groups.Default</value>
- </groups>
- <element name="max">10</element>
- </constraint>
- </getter>
- </bean>
- <constraint-definition
annotation="org.hibernate.jsr303.tck.tests.xmlconfiguration.ConsistentUserInformation">
- <validated-by include-existing-validators="false">
-
<value>org.hibernate.jsr303.tck.tests.xmlconfiguration.CustomConsistentUserValidator</value>
- </validated-by>
- </constraint-definition>
-</constraint-mappings>
Copied:
beanvalidation/trunk/validation-tck/src/main/resources/org/hibernate/jsr303/tck/tests/xmlconfiguration/validation-DefaultProviderSpecifiedInValidationXmlTest.xml
(from rev 17352,
beanvalidation/trunk/validation-tck/src/main/resources/org/hibernate/jsr303/tck/tests/xmlconfiguration/validation-EmptyXmlConfigurationTest.xml)
===================================================================
---
beanvalidation/trunk/validation-tck/src/main/resources/org/hibernate/jsr303/tck/tests/xmlconfiguration/validation-DefaultProviderSpecifiedInValidationXmlTest.xml
(rev 0)
+++
beanvalidation/trunk/validation-tck/src/main/resources/org/hibernate/jsr303/tck/tests/xmlconfiguration/validation-DefaultProviderSpecifiedInValidationXmlTest.xml 2009-08-19
10:20:17 UTC (rev 17356)
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<validation-config
+
xmlns="http://jboss.org/xml/ns/javax/validation/configuration"
+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+
xsi:schemaLocation="http://jboss.org/xml/ns/javax/validation/configu...
validation-configuration-1.0.xsd">
+
+
<default-provider>org.hibernate.jsr303.tck.common.TCKValidationProvider</default-provider>
+</validation-config>
\ No newline at end of file
Added:
beanvalidation/trunk/validation-tck/src/main/resources/org/hibernate/jsr303/tck/tests/xmlconfiguration/validation-MessageInterpolatorSpecifiedInValidationXmlTest.xml
===================================================================
---
beanvalidation/trunk/validation-tck/src/main/resources/org/hibernate/jsr303/tck/tests/xmlconfiguration/validation-MessageInterpolatorSpecifiedInValidationXmlTest.xml
(rev 0)
+++
beanvalidation/trunk/validation-tck/src/main/resources/org/hibernate/jsr303/tck/tests/xmlconfiguration/validation-MessageInterpolatorSpecifiedInValidationXmlTest.xml 2009-08-19
10:20:17 UTC (rev 17356)
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<validation-config
+
xmlns="http://jboss.org/xml/ns/javax/validation/configuration"
+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+
xsi:schemaLocation="http://jboss.org/xml/ns/javax/validation/configu...
validation-configuration-1.0.xsd">
+
<message-interpolator>org.hibernate.jsr303.tck.tests.xmlconfiguration.XmlDefinedMessageInterpolator</message-interpolator>
+</validation-config>
\ No newline at end of file
Modified:
beanvalidation/trunk/validation-tck/src/main/resources/org/hibernate/jsr303/tck/tests/xmlconfiguration/validation-MultipleBeanDefinitionTest.xml
===================================================================
---
beanvalidation/trunk/validation-tck/src/main/resources/org/hibernate/jsr303/tck/tests/xmlconfiguration/validation-MultipleBeanDefinitionTest.xml 2009-08-18
19:48:57 UTC (rev 17355)
+++
beanvalidation/trunk/validation-tck/src/main/resources/org/hibernate/jsr303/tck/tests/xmlconfiguration/validation-MultipleBeanDefinitionTest.xml 2009-08-19
10:20:17 UTC (rev 17356)
@@ -3,5 +3,5 @@
xsi:schemaLocation="http://jboss.org/xml/ns/javax/validation/configu...
validation-configuration-1.0.xsd"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<constraint-mapping>org/hibernate/jsr303/tck/tests/xmlconfiguration/user-constraints.xml</constraint-mapping>
-
<constraint-mapping>org/hibernate/jsr303/tck/tests/xmlconfiguration/user-constraints-copy.xml</constraint-mapping>
+
<constraint-mapping>org/hibernate/jsr303/tck/tests/xmlconfiguration/user-constraints-MultipleBeanDefinitionTest.xml</constraint-mapping>
</validation-config>
\ No newline at end of file
Modified: beanvalidation/trunk/validation-tck/src/main/resources/tck-audit.xml
===================================================================
--- beanvalidation/trunk/validation-tck/src/main/resources/tck-audit.xml 2009-08-18
19:48:57 UTC (rev 17355)
+++ beanvalidation/trunk/validation-tck/src/main/resources/tck-audit.xml 2009-08-19
10:20:17 UTC (rev 17356)
@@ -826,62 +826,69 @@
</section>
<section id="4.4.6" title="XML Configuration">
<assertion id="a">
- <text>Unless explicitly ignored by calling
Configuration.ignoreXMLConfiguration(), a
- Configuration takes into account the configuration available in
- META-INF/validation.xml</text>
+ <text>Unless explicitly ignored Configuration takes into account the
configuration
+ available in META-INF/validation.xml</text>
</assertion>
- <assertion id="b">
+ <assertion id="b" implied="true">
+ <text>META-INF/validation.xml will be ignored if
Configuration.ignoreXMLConfiguration()
+ is called.</text>
+ </assertion>
+ <assertion id="c">
<text>This configuration file is optional.</text>
</assertion>
- <assertion id="c">
+ <assertion id="d" testable="false">
<text>If more than one META-INF/validation.xml file is found in the
classpath, a
ValidationException is raised. </text>
</assertion>
- <assertion id="d">
+ <assertion id="e">
<text>Unless stated otherwise, XML based configuration settings are
overridden by values
- explicitly set via the Config- uration API</text>
+ explicitly set via the Configuration API</text>
</assertion>
- <assertion id="e">
- <text>default-provider: represents the class name of the provider
specific Configuration
+ <assertion id="f">
+ <text>default-provider represents the class name of the provider
specific Configuration
sub-interface. If defined, the provider suitable for this interface is
used</text>
</assertion>
- <assertion id="f">
- <text>message-interpolator: represents the fully qualified class name
of the
+ <assertion id="g">
+ <text>message-interpolator represents the fully qualified class name of
the
MessageInterpolator implementation. When defined in XML, the
implementation must
- have a public no-arg constructor. This element is optional</text>
+ have a public no-arg constructor.</text>
</assertion>
- <assertion id="g">
- <text>traversable-resolver: represents the fully qualified class name
of the
+ <assertion id="h">
+ <text>traversable-resolver represents the fully qualified class name of
the
TraversableResolver implementation. When defined in XML, the
implementation must
- have a public no-arg constructor. This element is optional</text>
+ have a public no-arg constructor.</text>
</assertion>
- <assertion id="h">
- <text>constraint-validator-factory: represents the fully qualified
class name of the
+ <assertion id="i">
+ <text>constraint-validator-factory represents the fully qualified class
name of the
ConstraintValidatorFactory implementation. When defined in XML, the
implementation
- must have a public no-arg constructor. This element is
optional.</text>
+ must have a public no-arg constructor.</text>
</assertion>
- <assertion id="i">
- <text>constraint-mapping: represents the resource path of an XML
mapping file</text>
+ <assertion id="j">
+ <text>message-interpolator, traversable-resolver and
constraint-validator-factory are
+ optional.</text>
</assertion>
- <assertion id="j">
+ <assertion id="k">
+ <text>constraint-mapping represents the resource path of an XML mapping
file</text>
+ </assertion>
+ <assertion id="l">
<text>More than one constraint-mapping element can be
present</text>
</assertion>
- <assertion id="k">
+ <assertion id="m">
<text>Mappings provided via Configuration.addMapping(InputString) are
added to the list
of mappings described via constraint-mapping</text>
</assertion>
- <assertion id="l">
+ <assertion id="n">
<text>The namespace javax.validation is reserved for use by this
specification</text>
</assertion>
- <assertion id="m">
- <text>Properties defined via Configura- tion.addProperty(String,
String) are added to
- the properties defined via property</text>
+ <assertion id="o">
+ <text>Properties defined via Configuration.addProperty(String, String)
are added to the
+ properties defined via property</text>
</assertion>
- <assertion id="n">
+ <assertion id="p">
<text>If a property with the same name are defined in both XML and via
the programmatic
- API, the value provided via programmatic API has prior- ity</text>
+ API, the value provided via programmatic API has priority</text>
</assertion>
- <assertion id="o">
+ <assertion id="q">
<text>If a public no-arg constructor is missing, a ValidationException
is raised during
the Configuration.buildValidatorFactory() call</text>
</assertion>