aboutsummaryrefslogtreecommitdiffstats
path: root/test/bean-api-validation
diff options
context:
space:
mode:
authorDenis <denis@vaadin.com>2017-01-16 16:42:03 +0200
committerGitHub <noreply@github.com>2017-01-16 16:42:03 +0200
commitfd92d1f134962fdd3302cd5ad575e072a3dae7bd (patch)
tree0372a14500ce28f7064ee90bb0e42616c1c24dc2 /test/bean-api-validation
parent352d12d977157f261c2e585e9e0a6f6354812c83 (diff)
downloadvaadin-framework-fd92d1f134962fdd3302cd5ad575e072a3dae7bd.tar.gz
vaadin-framework-fd92d1f134962fdd3302cd5ad575e072a3dae7bd.zip
Add separate modules to test Bean Validation lib necessity. (#8249)
* Add separate modules to test Bean Validation lib necessity. Fixes #8141
Diffstat (limited to 'test/bean-api-validation')
-rw-r--r--test/bean-api-validation/pom.xml41
-rw-r--r--test/bean-api-validation/src/test/java/com/vaadin/data/BeanValidationTest.java63
2 files changed, 104 insertions, 0 deletions
diff --git a/test/bean-api-validation/pom.xml b/test/bean-api-validation/pom.xml
new file mode 100644
index 0000000000..39f5ec2afe
--- /dev/null
+++ b/test/bean-api-validation/pom.xml
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <groupId>com.vaadin</groupId>
+ <artifactId>vaadin-test</artifactId>
+ <version>8.0-SNAPSHOT</version>
+ </parent>
+ <artifactId>vaadin-test-bean-api-validation</artifactId>
+ <packaging>jar</packaging>
+
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.eclipse.jetty</groupId>
+ <artifactId>jetty-maven-plugin</artifactId>
+ <version>${jetty.version}</version>
+ <configuration>
+ <scanIntervalSeconds>-1</scanIntervalSeconds>
+ <stopPort>8081</stopPort>
+ <stopWait>5</stopWait>
+ <stopKey>foo</stopKey>
+ </configuration>
+ <executions>
+ <!-- start and stop jetty (running our app) when running
+ integration tests -->
+ <execution>
+ <id>start-jetty</id>
+ <phase></phase>
+ </execution>
+ <execution>
+ <id>stop-jetty</id>
+ <phase></phase>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+
+</project>
diff --git a/test/bean-api-validation/src/test/java/com/vaadin/data/BeanValidationTest.java b/test/bean-api-validation/src/test/java/com/vaadin/data/BeanValidationTest.java
new file mode 100644
index 0000000000..2c9bcb5895
--- /dev/null
+++ b/test/bean-api-validation/src/test/java/com/vaadin/data/BeanValidationTest.java
@@ -0,0 +1,63 @@
+/*
+ * Copyright 2000-2016 Vaadin Ltd.
+ *
+ * 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 com.vaadin.data;
+
+import org.junit.Assert;
+import org.junit.Test;
+
+import com.vaadin.ui.TextField;
+
+/**
+ * @author Vaadin Ltd
+ *
+ */
+public class BeanValidationTest {
+
+ public static class Bean {
+
+ private String property;
+
+ public String getProperty() {
+ return property;
+ }
+
+ public void setProperty(String property) {
+ this.property = property;
+ }
+
+ }
+
+ @Test
+ public void binderWorksWithoutBeanValidationLib() {
+ try {
+ Class.forName("javax.validation.Validation");
+ Assert.fail();
+ } catch (ClassNotFoundException ignored) {
+ }
+
+ Binder<Bean> binder = new Binder<>(Bean.class);
+
+ TextField field = new TextField();
+ binder.forField(field).bind("property");
+
+ Bean bean = new Bean();
+ binder.setBean(bean);
+
+ field.setValue("foo");
+ Assert.assertEquals(field.getValue(), bean.getProperty());
+
+ }
+}