This is an automated email from the ASF dual-hosted git repository.

jgallimore pushed a commit to branch TOMEE-4159_Concurrency_TCK
in repository https://gitbox.apache.org/repos/asf/tomee.git

commit 1f2fd80df9ea67ed21b2f290d32c74ff8a305255
Author: Jonathan Gallimore <j...@jrg.me.uk>
AuthorDate: Wed Jan 11 13:46:58 2023 +0000

    Adding concurrency TCK
---
 tck/concurrency-signature-test/pom.xml        | 164 +++++++++++++++++++
 tck/concurrency-standalone/logging.properties |  40 +++++
 tck/concurrency-standalone/pom.xml            | 221 ++++++++++++++++++++++++++
 tck/concurrency-standalone/suite-web.xml      |  35 ++++
 tck/concurrency-standalone/suite.xml          |  35 ++++
 tck/pom.xml                                   |   1 +
 6 files changed, 496 insertions(+)

diff --git a/tck/concurrency-signature-test/pom.xml 
b/tck/concurrency-signature-test/pom.xml
new file mode 100644
index 0000000000..447cc11695
--- /dev/null
+++ b/tck/concurrency-signature-test/pom.xml
@@ -0,0 +1,164 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  Licensed to the Apache Software Foundation (ASF) under one or more
+  contributor license agreements.  See the NOTICE file distributed with
+  this work for additional information regarding copyright ownership.
+  The ASF licenses this file to You 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.
+  -->
+<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";>
+  <parent>
+    <artifactId>tck</artifactId>
+    <groupId>org.apache.tomee</groupId>
+    <version>10.0.0-SNAPSHOT</version>
+  </parent>
+
+  <modelVersion>4.0.0</modelVersion>
+  <artifactId>jsonb-signature-test</artifactId>
+  <name>TomEE :: TCK :: JSON-B Signature Tests</name>
+
+  <dependencies>
+    <dependency>
+      <groupId>org.apache.johnzon</groupId>
+      <artifactId>johnzon-core</artifactId>
+      <classifier>jakarta</classifier>
+      <exclusions>
+        <exclusion>
+          <groupId>org.apache.johnzon</groupId>
+          <artifactId>*</artifactId>
+        </exclusion>
+        <exclusion>
+          <groupId>org.apache.geronimo.specs</groupId>
+          <artifactId>*</artifactId>
+        </exclusion>
+      </exclusions>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.johnzon</groupId>
+      <artifactId>johnzon-mapper</artifactId>
+      <classifier>jakarta</classifier>
+      <exclusions>
+        <exclusion>
+          <groupId>org.apache.johnzon</groupId>
+          <artifactId>*</artifactId>
+        </exclusion>
+        <exclusion>
+          <groupId>org.apache.geronimo.specs</groupId>
+          <artifactId>*</artifactId>
+        </exclusion>
+      </exclusions>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.johnzon</groupId>
+      <artifactId>johnzon-jsonb</artifactId>
+      <classifier>jakarta</classifier>
+      <exclusions>
+        <exclusion>
+          <groupId>org.apache.johnzon</groupId>
+          <artifactId>*</artifactId>
+        </exclusion>
+        <exclusion>
+          <groupId>org.apache.geronimo.specs</groupId>
+          <artifactId>*</artifactId>
+        </exclusion>
+      </exclusions>
+    </dependency>
+
+    <dependency>
+      <groupId>org.apache.tomee</groupId>
+      <artifactId>jakartaee-api</artifactId>
+    </dependency>
+
+    <dependency>
+      <groupId>jakarta.json.bind</groupId>
+      <artifactId>jakarta.json.bind-tck</artifactId>
+      <version>3.0.0</version>
+      <scope>test</scope>
+    </dependency>
+
+    <dependency>
+      <groupId>org.apache.openwebbeans</groupId>
+      <artifactId>openwebbeans-se</artifactId>
+      <version>2.0.27</version>
+      <classifier>jakarta</classifier>
+      <exclusions>
+        <exclusion>
+          <groupId>org.apache.openwebbeans</groupId>
+          <artifactId>*</artifactId>
+        </exclusion>
+        <exclusion>
+          <groupId>org.apache.geronimo.specs</groupId>
+          <artifactId>*</artifactId>
+        </exclusion>
+      </exclusions>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.openwebbeans</groupId>
+      <artifactId>openwebbeans-impl</artifactId>
+      <version>2.0.27</version>
+      <classifier>jakarta</classifier>
+      <exclusions>
+        <exclusion>
+          <groupId>org.apache.openwebbeans</groupId>
+          <artifactId>*</artifactId>
+        </exclusion>
+        <exclusion>
+          <groupId>org.apache.geronimo.specs</groupId>
+          <artifactId>*</artifactId>
+        </exclusion>
+      </exclusions>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.openwebbeans</groupId>
+      <artifactId>openwebbeans-spi</artifactId>
+      <version>2.0.27</version>
+      <classifier>jakarta</classifier>
+      <exclusions>
+        <exclusion>
+          <groupId>org.apache.openwebbeans</groupId>
+          <artifactId>*</artifactId>
+        </exclusion>
+        <exclusion>
+          <groupId>org.apache.geronimo.specs</groupId>
+          <artifactId>*</artifactId>
+        </exclusion>
+      </exclusions>
+    </dependency>
+  </dependencies>
+
+  <build>
+    <testResources>
+      <testResource>
+        <directory>src/test/resources</directory>
+        <filtering>true</filtering>
+      </testResource>
+    </testResources>
+    <plugins>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-surefire-plugin</artifactId>
+        <version>${surefire.version}</version>
+        <configuration>
+          <reuseForks>false</reuseForks>
+          <forkCount>1</forkCount>
+          <dependenciesToScan>
+            <dependency>jakarta.json.bind:jakarta.json.bind-tck</dependency>
+          </dependenciesToScan>
+          <includes>
+            <include>**/JSONBSigTest</include>
+          </includes>
+        </configuration>
+      </plugin>
+    </plugins>
+  </build>
+
+</project>
\ No newline at end of file
diff --git a/tck/concurrency-standalone/logging.properties 
b/tck/concurrency-standalone/logging.properties
new file mode 100644
index 0000000000..891082e145
--- /dev/null
+++ b/tck/concurrency-standalone/logging.properties
@@ -0,0 +1,40 @@
+# Ensure that both your client and sever JVMs point to this file using the 
java.util.logging property
+# -Djava.util.logging.config.file=/path/to/logging.properties
+
+#Handlers we plan to use
+handlers=java.util.logging.FileHandler,java.util.logging.ConsoleHandler
+
+#Global logger - By default only log warnings
+.level=WARNING
+
+#Concurrency logger - By default log everything for concurrency loggers
+ee.jakarta.tck.concurrent.level=ALL
+
+#Formatting for the simple formatter
+java.util.logging.SimpleFormatter.class.log=true
+java.util.logging.SimpleFormatter.class.full=false
+java.util.logging.SimpleFormatter.class.length=30
+
+java.util.logging.SimpleFormatter.level.log=true
+
+java.util.logging.SimpleFormatter.method.log=true
+java.util.logging.SimpleFormatter.method.length=30
+
+java.util.logging.SimpleFormatter.thread.log=true
+java.util.logging.SimpleFormatter.thread.length=3
+
+java.util.logging.SimpleFormatter.time.log=true
+java.util.logging.SimpleFormatter.time.format=[MM/dd/yyyy HH:mm:ss:SSS z]
+
+java.util.logging.SimpleFormatter.format=[%1$tF %1$tT] %4$.1s %3$s %5$s %n
+
+#File logging
+java.util.logging.FileHandler.pattern=ConcurrentTCK%g%u.log
+java.util.logging.FileHandler.limit = 500000
+java.util.logging.FileHandler.count = 5
+java.util.logging.FileHandler.formatter=java.util.logging.SimpleFormatter
+java.util.logging.FileHandler.level=CONFIG
+
+# Console Logging
+java.util.logging.ConsoleHandler.formatter=java.util.logging.SimpleFormatter
+java.util.logging.ConsoleHandler.level=WARNING
\ No newline at end of file
diff --git a/tck/concurrency-standalone/pom.xml 
b/tck/concurrency-standalone/pom.xml
new file mode 100644
index 0000000000..678bd6fb2d
--- /dev/null
+++ b/tck/concurrency-standalone/pom.xml
@@ -0,0 +1,221 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  Licensed to the Apache Software Foundation (ASF) under one or more
+  contributor license agreements.  See the NOTICE file distributed with
+  this work for additional information regarding copyright ownership.
+  The ASF licenses this file to You 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.
+  -->
+<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";>
+  <parent>
+    <artifactId>tck</artifactId>
+    <groupId>org.apache.tomee</groupId>
+    <version>10.0.0-SNAPSHOT</version>
+  </parent>
+
+  <modelVersion>4.0.0</modelVersion>
+  <artifactId>concurrency-standalone</artifactId>
+  <name>TomEE :: TCK :: Concurrency Standalone</name>
+
+  <properties>
+    <!-- General properties -->
+    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+    <maven.compiler.source>11</maven.compiler.source>
+    <maven.compiler.target>11</maven.compiler.target>
+
+    <!-- Dependency and Plugin Versions -->
+    <jakarta.concurrent.version>3.0.0</jakarta.concurrent.version>
+    <jakarta.servlet.version>6.0.0</jakarta.servlet.version>
+    <arquillian.version>1.7.0.Alpha10</arquillian.version>
+    <testng.version>6.14.3</testng.version>
+    <sigtest.version>1.6</sigtest.version>
+    <derby.version>10.15.2.0</derby.version>
+    <maven.dep.plugin.version>3.3.0</maven.dep.plugin.version>
+    <maven.comp.plugin.version>3.10.1</maven.comp.plugin.version>
+    <maven.surefire.plugin.version>2.22.2</maven.surefire.plugin.version>
+
+    <!-- Location to put test application dependencies -->
+<!--    
<application.server.lib>[path/to/appserver/lib]</application.server.lib>-->
+
+    <!-- Pointer to suite.xml file that has the TestNG configuration.
+         Use suite.xml to test the full profile
+         Use suite-web.xml to test the web profile
+     -->
+    <suiteXmlFile>suite.xml</suiteXmlFile>
+
+    <!-- Pointer to logging.properties file that has the java.util.logging 
configuration -->
+    <logging.config>logging.properties</logging.config>
+
+    <!-- Output directory -->
+    <targetDirectory>${project.basedir}/target</targetDirectory>
+  </properties>
+
+  <repositories>
+    <!-- TODO add private repo if your implementation is not public -->
+    <!-- TODO add staging repo if you want to use SNAPSHOT versions of the
+        API and TCK -->
+  </repositories>
+
+  <!-- tag::testClientDep[] -->
+  <!-- The Arquillian test framework -->
+  <dependencyManagement>
+    <dependencies>
+      <dependency>
+        <groupId>org.jboss.arquillian</groupId>
+        <artifactId>arquillian-bom</artifactId>
+        <version>${arquillian.version}</version>
+        <type>pom</type>
+        <scope>import</scope>
+      </dependency>
+    </dependencies>
+  </dependencyManagement>
+
+  <!-- Client Dependencies -->
+  <dependencies>
+    <!-- The TCK -->
+    <dependency>
+      <groupId>jakarta.enterprise.concurrent</groupId>
+      <artifactId>jakarta.enterprise.concurrent-tck</artifactId>
+      <version>${jakarta.concurrent.version}</version>
+    </dependency>
+    <!-- The API -->
+    <dependency>
+      <groupId>jakarta.enterprise.concurrent</groupId>
+      <artifactId>jakarta.enterprise.concurrent-api</artifactId>
+      <version>${jakarta.concurrent.version}</version>
+    </dependency>
+    <!-- Arquillian Implementation for TestNG -->
+    <dependency>
+      <groupId>org.jboss.arquillian.testng</groupId>
+      <artifactId>arquillian-testng-container</artifactId>
+      <version>${arquillian.version}</version>
+    </dependency>
+    <!-- Arquillian Deps for Apache TomEE -->
+
+    <dependency>
+      <groupId>${project.groupId}</groupId>
+      <artifactId>apache-tomee</artifactId>
+      <version>${project.version}</version>
+      <type>zip</type>
+      <classifier>plus</classifier>
+      <scope>test</scope>
+    </dependency>
+    <dependency>
+      <groupId>${project.groupId}</groupId>
+      <artifactId>arquillian-tomee-remote</artifactId>
+      <version>${project.version}</version>
+      <scope>test</scope>
+    </dependency>
+    <!-- End of deps for Apache TomEE -->
+
+    <!-- Arquillian transitive dependency on Servlet -->
+    <dependency>
+      <groupId>jakarta.servlet</groupId>
+      <artifactId>jakarta.servlet-api</artifactId>
+      <version>${jakarta.servlet.version}</version>
+    </dependency>
+    <!-- TestNG -->
+    <dependency>
+      <groupId>org.testng</groupId>
+      <artifactId>testng</artifactId>
+      <version>${testng.version}</version>
+    </dependency>
+    <!-- Signature Test Plugin -->
+    <dependency>
+      <groupId>org.netbeans.tools</groupId>
+      <artifactId>sigtest-maven-plugin</artifactId>
+      <version>${sigtest.version}</version>
+    </dependency>
+  </dependencies>
+  <!-- end::testClientDep[] -->
+
+  <build>
+    <directory>${targetDirectory}</directory>
+    <defaultGoal>clean test</defaultGoal>
+    <plugins>
+      <!-- tag::testServerDep[] -->
+      <!-- Test Server Dependencies -->
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-dependency-plugin</artifactId>
+        <version>${maven.dep.plugin.version}</version>
+        <configuration>
+          <artifactItems>
+            <artifactItem>
+              <groupId>org.testng</groupId>
+              <artifactId>testng</artifactId>
+              <version>${testng.version}</version>
+            </artifactItem>
+            <artifactItem>
+              <groupId>org.apache.derby</groupId>
+              <artifactId>derby</artifactId>
+              <version>${derby.version}</version>
+            </artifactItem>
+            <artifactItem>
+              <groupId>org.netbeans.tools</groupId>
+              <artifactId>sigtest-maven-plugin</artifactId>
+              <version>${sigtest.version}</version>
+            </artifactItem>
+          </artifactItems>
+<!--          <outputDirectory>${application.server.lib}</outputDirectory>-->
+        </configuration>
+      </plugin>
+      <!-- end::testServerDep[] -->
+      <!-- Compile plugin for any supplemental class files -->
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-compiler-plugin</artifactId>
+        <version>${maven.comp.plugin.version}</version>
+        <configuration>
+          <source>${maven.compiler.source}</source>
+          <target>${maven.compiler.target}</target>
+        </configuration>
+      </plugin>
+      <!-- tag::configTestNG[] -->
+      <!-- Surefire plugin - Entrypoint for TestNG -->
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-surefire-plugin</artifactId>
+        <version>${maven.surefire.plugin.version}</version>
+        <configuration>
+          <!-- tag::logging[] -->
+          <systemProperties>
+            <property>
+              <name>java.util.logging.config.file</name>
+              <value>${logging.config}</value>
+            </property>
+          </systemProperties>
+          <!-- end::logging[] -->
+          <!-- tag::ignore[] -->
+          <systemPropertyVariables>
+            <!-- Properties shared with Arquillian -->
+<!--            <tck_server>[TODO]</tck_server>-->
+<!--            <tck_hostname>[TODO]</tck_hostname>-->
+<!--            <tck_username>[TODO]</tck_username>-->
+<!--            <tck_password>[TODO]</tck_password>-->
+<!--            <tck_port>[TODO]</tck_port>-->
+<!--            <tck_port>[TODO]</tck_port>-->
+          </systemPropertyVariables>
+          <!-- end::ignore[] -->
+          <suiteXmlFiles>
+            <suiteXmlFile>${suiteXmlFile}</suiteXmlFile>
+          </suiteXmlFiles>
+          <!-- Ensure surfire plugin looks under src/main/java instead of 
src/test/java -->
+          
<testSourceDirectory>${basedir}${file.separarator}src${file.separarator}main${file.separarator}java${file.separarator}</testSourceDirectory>
+        </configuration>
+      </plugin>
+      <!-- end::configTestNG[] -->
+      <!-- TODO: you can include a plugin to start your application server 
here -->
+    </plugins>
+  </build>
+
+</project>
\ No newline at end of file
diff --git a/tck/concurrency-standalone/suite-web.xml 
b/tck/concurrency-standalone/suite-web.xml
new file mode 100644
index 0000000000..08b74dfa1c
--- /dev/null
+++ b/tck/concurrency-standalone/suite-web.xml
@@ -0,0 +1,35 @@
+<!--
+ /*
+ * Copyright (c) 2022 Contributors to the Eclipse Foundation
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v. 2.0, which is available at
+ * http://www.eclipse.org/legal/epl-2.0.
+ *
+ * This Source Code may also be made available under the following Secondary
+ * Licenses when the conditions for such availability set forth in the
+ * Eclipse Public License v. 2.0 are satisfied: GNU General Public License,
+ * version 2 with the GNU Classpath Exception, which is available at
+ * https://www.gnu.org/software/classpath/license.html.
+ *
+ * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
+ */
+-->
+<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd"; >
+
+<!-- 
+    This suite file is for testing Jakarta Concurrency against the Jakarta Web 
Profile.
+ -->
+<suite name="jakarta-concurrency" verbose="2" configfailurepolicy="continue">
+    <test name="jakarta-concurrency.tck">
+        <groups>
+            <run>
+                <exclude name="eefull" />
+            </run>
+        </groups>
+        <packages>
+            <package name="ee.jakarta.tck.concurrent.api.*"/>
+            <package name="ee.jakarta.tck.concurrent.spec.*"/>
+        </packages>
+    </test>
+</suite>
\ No newline at end of file
diff --git a/tck/concurrency-standalone/suite.xml 
b/tck/concurrency-standalone/suite.xml
new file mode 100644
index 0000000000..21e1b7e7a4
--- /dev/null
+++ b/tck/concurrency-standalone/suite.xml
@@ -0,0 +1,35 @@
+<!--
+ /*
+ * Copyright (c) 2022 Contributors to the Eclipse Foundation
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v. 2.0, which is available at
+ * http://www.eclipse.org/legal/epl-2.0.
+ *
+ * This Source Code may also be made available under the following Secondary
+ * Licenses when the conditions for such availability set forth in the
+ * Eclipse Public License v. 2.0 are satisfied: GNU General Public License,
+ * version 2 with the GNU Classpath Exception, which is available at
+ * https://www.gnu.org/software/classpath/license.html.
+ *
+ * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
+ */
+-->
+<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd"; >
+
+<!-- 
+    This suite file is for testing Jakarta Concurrency against the Jakarta 
Full Profile.
+ -->
+<suite name="jakarta-concurrency" verbose="2" configfailurepolicy="continue">
+    <test name="jakarta-concurrency.tck">
+        <groups>
+             <run>
+               <exclude name="eeweb"/>
+             </run>
+           </groups>
+        <packages>
+            <package name="ee.jakarta.tck.concurrent.api.*"/>
+            <package name="ee.jakarta.tck.concurrent.spec.*"/>
+        </packages>
+    </test>
+</suite>
\ No newline at end of file
diff --git a/tck/pom.xml b/tck/pom.xml
index 7a0bf23cb2..4c63e37664 100644
--- a/tck/pom.xml
+++ b/tck/pom.xml
@@ -45,6 +45,7 @@
     <module>jsonb-signature-test</module>
     <module>jsonp-standalone</module>
     <module>jsonp-signature-test</module>
+    <module>concurrency-standalone</module>
     <module>microprofile-tck</module>
   </modules>
 

Reply via email to