diff --git a/testsuite/integration/java8/pom.xml b/testsuite/integration/java8/pom.xml new file mode 100644 index 000000000000..b68d9f73300a --- /dev/null +++ b/testsuite/integration/java8/pom.xml @@ -0,0 +1,59 @@ + + + 4.0.0 + + + wildfly-ts-integ + org.wildfly + 9.0.0.Alpha2-SNAPSHOT + + + wildfly-ts-integ-java8 + jar + WildFly Test Suite: Integration - Java 8 + + + + 1.8 + 1.8 + + + ${basedir}/.. + ${jbossas.ts.integ.dir}/.. + ${jbossas.ts.dir}/.. + + + + + + org.apache.maven.plugins + maven-antrun-plugin + + + add-java8-config + process-test-resources + + + + + + + run + + + + + + + org.apache.maven.plugins + maven-surefire-plugin + + + + + diff --git a/testsuite/integration/java8/src/test/config/arq/arquillian.xml b/testsuite/integration/java8/src/test/config/arq/arquillian.xml new file mode 100644 index 000000000000..63cc3bff54d0 --- /dev/null +++ b/testsuite/integration/java8/src/test/config/arq/arquillian.xml @@ -0,0 +1,25 @@ + + + + + + + + ${basedir}/target/jbossas + ${server.jvm.args} -Djboss.inst=${basedir}/target/jbossas -Djboss.bind.address=${node0} -Dtest.bind.address=${node0} + ${jboss.server.config.file.name:standalone-java8.xml} + ${jboss.args} + + true + ${node0:127.0.0.1} + ${as.managementPort:9990} + + + ${as.debug.port:8787} ${as.managementPort:9990} + 8 + + + + diff --git a/testsuite/integration/java8/src/test/java/org/wildfly/test/integration/jsp/AnswerToEverythingComputation.java b/testsuite/integration/java8/src/test/java/org/wildfly/test/integration/jsp/AnswerToEverythingComputation.java new file mode 100644 index 000000000000..2634fc773107 --- /dev/null +++ b/testsuite/integration/java8/src/test/java/org/wildfly/test/integration/jsp/AnswerToEverythingComputation.java @@ -0,0 +1,9 @@ +package org.wildfly.test.integration.jsp; + +/** + * @author Tomaz Cerar (c) 2015 Red Hat Inc. + */ +@FunctionalInterface +public interface AnswerToEverythingComputation { + int compute(); +} diff --git a/testsuite/integration/java8/src/test/java/org/wildfly/test/integration/jsp/JspCompilerTestCase.java b/testsuite/integration/java8/src/test/java/org/wildfly/test/integration/jsp/JspCompilerTestCase.java new file mode 100644 index 000000000000..d8fb97334813 --- /dev/null +++ b/testsuite/integration/java8/src/test/java/org/wildfly/test/integration/jsp/JspCompilerTestCase.java @@ -0,0 +1,69 @@ +/* + * JBoss, Home of Professional Open Source. + * Copyright 2014, Red Hat, Inc., and individual contributors + * as indicated by the @author tags. See the copyright.txt file in the + * distribution for a full listing of individual contributors. + * + * This is free software; you can redistribute it and/or modify it + * under the terms of the GNU Lesser General Public License as + * published by the Free Software Foundation; either version 2.1 of + * the License, or (at your option) any later version. + * + * This software is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this software; if not, write to the Free + * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA + * 02110-1301 USA, or see the FSF site: http://www.fsf.org. + */ +package org.wildfly.test.integration.jsp; + +import java.net.URL; +import java.util.concurrent.TimeUnit; + +import org.jboss.arquillian.container.test.api.Deployment; +import org.jboss.arquillian.container.test.api.RunAsClient; +import org.jboss.arquillian.junit.Arquillian; +import org.jboss.arquillian.test.api.ArquillianResource; +import org.jboss.as.test.integration.common.HttpRequest; +import org.jboss.shrinkwrap.api.ShrinkWrap; +import org.jboss.shrinkwrap.api.asset.EmptyAsset; +import org.jboss.shrinkwrap.api.asset.StringAsset; +import org.jboss.shrinkwrap.api.spec.WebArchive; +import org.junit.Test; +import org.junit.runner.RunWith; + +/** + * See WFLY-2690 + */ +@RunWith(Arquillian.class) +@RunAsClient +public class JspCompilerTestCase { + + private static final StringAsset WEB_XML = new StringAsset( + "\n" + + "\n" + + ""); + + + + @Deployment + public static WebArchive deploy() { + return ShrinkWrap.create(WebArchive.class) + .addAsWebInfResource(WEB_XML, "web.xml") + .addClasses(AnswerToEverythingComputation.class) + .addAsWebResource(JspCompilerTestCase.class.getResource("jsp-with-lambdas.jsp"), "index.jsp"); + + } + + @Test + public void test(@ArquillianResource URL url) throws Exception { + HttpRequest.get(url + "index.jsp", 10, TimeUnit.SECONDS); + } +} diff --git a/testsuite/integration/java8/src/test/resources/logging.properties b/testsuite/integration/java8/src/test/resources/logging.properties new file mode 100644 index 000000000000..0409ea5ca7d8 --- /dev/null +++ b/testsuite/integration/java8/src/test/resources/logging.properties @@ -0,0 +1,52 @@ +# +# JBoss, Home of Professional Open Source. +# Copyright 2010, Red Hat, Inc., and individual contributors +# as indicated by the @author tags. See the copyright.txt file in the +# distribution for a full listing of individual contributors. +# +# This is free software; you can redistribute it and/or modify it +# under the terms of the GNU Lesser General Public License as +# published by the Free Software Foundation; either version 2.1 of +# the License, or (at your option) any later version. +# +# This software is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this software; if not, write to the Free +# Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA +# 02110-1301 USA, or see the FSF site: http://www.fsf.org. +# + +# Additional logger names to configure (root logger is always configured) +loggers=sun.rmi,org.jboss.shrinkwrap +logger.org.jboss.shrinkwrap.level=INFO +logger.sun.rmi.level=WARNING + +# Root logger level +logger.level=DEBUG + +# Root logger handlers +logger.handlers=FILE, CONSOLE + +# Console handler configuration +handler.CONSOLE=org.jboss.logmanager.handlers.ConsoleHandler +handler.CONSOLE.properties=autoFlush +handler.CONSOLE.level=INFO +handler.CONSOLE.autoFlush=true +handler.CONSOLE.formatter=PATTERN + +# File handler configuration +handler.FILE=org.jboss.logmanager.handlers.FileHandler +handler.FILE.level=DEBUG +handler.FILE.properties=autoFlush,fileName +handler.FILE.autoFlush=true +handler.FILE.fileName=./target/test.log +handler.FILE.formatter=PATTERN + +# Formatter pattern configuration +formatter.PATTERN=org.jboss.logmanager.formatters.PatternFormatter +formatter.PATTERN.properties=pattern +formatter.PATTERN.pattern=%d{HH:mm:ss,SSS} %-5p [%c] (%t) %s%e%n diff --git a/testsuite/integration/java8/src/test/resources/org/wildfly/test/integration/jsp/jsp-with-lambdas.jsp b/testsuite/integration/java8/src/test/resources/org/wildfly/test/integration/jsp/jsp-with-lambdas.jsp new file mode 100644 index 000000000000..f45872ccabab --- /dev/null +++ b/testsuite/integration/java8/src/test/resources/org/wildfly/test/integration/jsp/jsp-with-lambdas.jsp @@ -0,0 +1,11 @@ +<%@ page import="java.io.IOException" %> +<%@ page import="org.wildfly.test.integration.jsp.AnswerToEverythingComputation" %> + + +<% + try { + response.getWriter().write("Answer to everything is: " + ((AnswerToEverythingComputation) () -> 42).compute()); + } catch (IOException ex) { + throw new RuntimeException(ex); + } +%> diff --git a/testsuite/integration/java8/src/test/resources/standalone-java8.xml b/testsuite/integration/java8/src/test/resources/standalone-java8.xml new file mode 100644 index 000000000000..d5cdcc16b385 --- /dev/null +++ b/testsuite/integration/java8/src/test/resources/standalone-java8.xml @@ -0,0 +1,404 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + jdbc:h2:mem:test;DB_CLOSE_DELAY=-1;DB_CLOSE_ON_EXIT=FALSE + h2 + + sa + sa + + + + + org.h2.jdbcx.JdbcDataSource + + + + + + + + + false + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ${jboss.bind.address:127.0.0.1} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/testsuite/integration/pom.xml b/testsuite/integration/pom.xml index b56086e995bb..aa7b6d92d7c6 100644 --- a/testsuite/integration/pom.xml +++ b/testsuite/integration/pom.xml @@ -181,6 +181,16 @@ picketlink + + + ts.integ.group.java8 + + 1.8 + + + java8 + +