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

amichair pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/aries-rsa.git

commit 0f9b2981f167a225819abe3df096086c5dc28842
Author: Amichai Rothman <[email protected]>
AuthorDate: Wed Mar 18 14:29:37 2026 +0200

    ARIES-2210 Update and run TCK tests 8.1.0
---
 itests/pom.xml                      |   1 +
 itests/tck/README.md                |  17 ++---
 itests/tck/install/install-tests.sh |  23 ------
 itests/tck/pom.xml                  | 145 ++++++++++++++++++++++++++++++------
 itests/tck/runtests                 |  21 ------
 itests/tck/tck.bndrun               | 114 +++++++++++++++++++---------
 parent/pom.xml                      |  13 +++-
 7 files changed, 221 insertions(+), 113 deletions(-)

diff --git a/itests/pom.xml b/itests/pom.xml
index 4385152b..e768310f 100644
--- a/itests/pom.xml
+++ b/itests/pom.xml
@@ -39,6 +39,7 @@
 
     <modules>
         <module>felix</module>
+        <module>tck</module>
     </modules>
 
     <dependencyManagement>
diff --git a/itests/tck/README.md b/itests/tck/README.md
index 4581ca44..464f6b31 100644
--- a/itests/tck/README.md
+++ b/itests/tck/README.md
@@ -1,18 +1,13 @@
 # TCK Tests
 
-## Install tests from tck
+This module runs the OSGi RSA TCK tests, to make sure the RSA implementation 
is fully compliant with the specs.
 
-Call install-tests.sh with the path to the directory where the test jars 
reside.
-
-    sh install/install-tests.sh ~/checkout/osgi_ct_enterprise/jar
-
-This installs the tests to your local maven repo and only needs to be done 
once.
-
-## Build the index
+## Run the tests
 
-    mvn package
+To run all tests:
 
-## Run the tests
+    ../../mvnw verify
 
-TODO
+To run a specific test:
 
+    ../../mvnw verify -Dtck.test=<fullly.qualified.TestClass[:method]>
diff --git a/itests/tck/install/install-tests.sh 
b/itests/tck/install/install-tests.sh
deleted file mode 100644
index 41370f8a..00000000
--- a/itests/tck/install/install-tests.sh
+++ /dev/null
@@ -1,23 +0,0 @@
-
-#    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.
-mvn org.apache.maven.plugins:maven-install-plugin:install-file 
-Dfile=$1/org.osgi.test.cases.remoteserviceadmin-5.0.0.jar \
-  -DgroupId=org.osgi.test.cases \
-  -DartifactId=org.osgi.test.cases.remoteserviceadmin \
-  -Dversion=5.0.0 \
-  -Dpackaging=jar \
-  -DgeneratePom=true
diff --git a/itests/tck/pom.xml b/itests/tck/pom.xml
index dba86c46..b29cecbb 100644
--- a/itests/tck/pom.xml
+++ b/itests/tck/pom.xml
@@ -17,7 +17,7 @@
     <parent>
         <groupId>org.apache.aries.rsa</groupId>
         <artifactId>org.apache.aries.rsa.itests</artifactId>
-        <version>1.10-SNAPSHOT</version>
+        <version>2.0.0-SNAPSHOT</version>
         <relativePath>../pom.xml</relativePath>
     </parent>
 
@@ -28,57 +28,131 @@
     <name>Aries Remote Service Admin itests tck</name>
 
     <properties>
-        <paxlogging.version>1.11.17</paxlogging.version>
+        <tck.version>8.1.0</tck.version>
+        <jaxb.version>4.0.8</jaxb.version>
     </properties>
 
     <dependencies>
 
-        <!-- Test cases from the tck. These need to be deployed by hand as
-            redistribution is not allowed -->
+        <!-- RSA -->
         <dependency>
-            <groupId>org.osgi.test.cases</groupId>
-            <artifactId>org.osgi.test.cases.remoteserviceadmin</artifactId>
-            <version>5.0.0</version>
+            <groupId>org.apache.aries.rsa</groupId>
+            <artifactId>org.apache.aries.rsa.core</artifactId>
+            <version>${project.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.aries.rsa</groupId>
+            <artifactId>org.apache.aries.rsa.spi</artifactId>
+            <version>${project.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.aries.rsa</groupId>
-            <artifactId>repository</artifactId>
+            <artifactId>org.apache.aries.rsa.topology-manager</artifactId>
+            <version>${project.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.aries.rsa.discovery</groupId>
+            <artifactId>org.apache.aries.rsa.discovery.local</artifactId>
+            <version>${project.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.aries.rsa.discovery</groupId>
+            <artifactId>org.apache.aries.rsa.discovery.tcp</artifactId>
+            <version>${project.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.aries.rsa.provider</groupId>
+            <artifactId>org.apache.aries.rsa.provider.tcp</artifactId>
             <version>${project.version}</version>
-            <type>pom</type>
         </dependency>
 
-        <!-- Test framework -->
+        <!-- JAXB dependencies (used by e.g. discovery.local) -->
+        <dependency>
+            <groupId>jakarta.xml.bind</groupId>
+            <artifactId>jakarta.xml.bind-api</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>com.sun.xml.bind</groupId>
+            <artifactId>jaxb-impl</artifactId>
+            <version>${jaxb.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>com.sun.xml.bind</groupId>
+            <artifactId>jaxb-core</artifactId>
+            <version>${jaxb.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>jakarta.activation</groupId>
+            <artifactId>jakarta.activation-api</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>com.sun.istack</groupId>
+            <artifactId>istack-commons-runtime</artifactId>
+            <version>4.2.0</version>
+        </dependency>
+        <dependency>
+            <groupId>org.glassfish.hk2</groupId>
+            <artifactId>osgi-resource-locator</artifactId>
+            <version>3.0.0</version>
+        </dependency>
+
+        <!-- TCK Test cases. -->
         <dependency>
-            <groupId>biz.aQute.bnd</groupId>
-            <artifactId>bnd</artifactId>
-            <version>2.4.0</version>
+            <groupId>org.osgi</groupId>
+            <artifactId>org.osgi.test.cases.remoteserviceadmin</artifactId>
+            <version>${tck.version}</version>
         </dependency>
+
+        <!-- Test framework -->
         <dependency>
             <groupId>org.apache.servicemix.bundles</groupId>
             <artifactId>org.apache.servicemix.bundles.junit</artifactId>
-            <version>3.8.2_2</version>
+            <version>4.13.2_1</version>
         </dependency>
         <dependency>
-            <groupId>org.eclipse</groupId>
+            <groupId>org.assertj</groupId>
+            <artifactId>assertj-core</artifactId>
+            <version>3.27.7</version>
+        </dependency>
+        <dependency>
+            <groupId>net.bytebuddy</groupId>
+            <artifactId>byte-buddy</artifactId>
+            <version>1.18.8</version>
+        </dependency>
+
+        <!-- OSGi framework -->
+        <dependency>
+            <groupId>org.eclipse.platform</groupId>
             <artifactId>org.eclipse.osgi</artifactId>
-            <version>3.8.0.v20120529-1548</version>
-            <scope>provided</scope>
+            <version>3.24.100</version>
+        </dependency>
+        <dependency>
+            <groupId>org.osgi</groupId>
+            <artifactId>org.osgi.util.function</artifactId>
+            <version>1.2.0</version>
+        </dependency>
+        <dependency>
+            <groupId>org.osgi</groupId>
+            <artifactId>org.osgi.util.promise</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.osgi</groupId>
+            <artifactId>org.osgi.service.component</artifactId>
+            <version>1.5.1</version>
         </dependency>
 
         <dependency>
             <groupId>org.ops4j.pax.logging</groupId>
             <artifactId>pax-logging-api</artifactId>
             <version>${paxlogging.version}</version>
-            <scope>test</scope>
         </dependency>
         <dependency>
             <groupId>org.ops4j.pax.logging</groupId>
-            <artifactId>pax-logging-service</artifactId>
+            <artifactId>pax-logging-log4j2</artifactId>
             <version>${paxlogging.version}</version>
-            <scope>test</scope>
         </dependency>
 
-        <!-- Needed compendium services -->
+        <!-- OSGi compendium services -->
         <dependency>
             <groupId>org.apache.felix</groupId>
             <artifactId>org.apache.felix.configadmin</artifactId>
@@ -88,7 +162,11 @@
             <groupId>org.apache.felix</groupId>
             <artifactId>org.apache.felix.eventadmin</artifactId>
             <version>1.6.4</version>
-            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.felix</groupId>
+            <artifactId>org.apache.felix.scr</artifactId>
+            <version>2.2.18</version>
         </dependency>
 
     </dependencies>
@@ -98,7 +176,7 @@
             <plugin>
                 <groupId>biz.aQute.bnd</groupId>
                 <artifactId>bnd-indexer-maven-plugin</artifactId>
-                <version>3.3.0</version>
+                <version>${bnd.version}</version>
                 <configuration>
                     <localURLs>REQUIRED</localURLs>
                 </configuration>
@@ -111,6 +189,27 @@
                     </execution>
                 </executions>
             </plugin>
+            <plugin>
+                <groupId>biz.aQute.bnd</groupId>
+                <artifactId>bnd-testing-maven-plugin</artifactId>
+                <version>${bnd.version}</version>
+                <configuration>
+                    <bndruns>
+                        <bndrun>tck.bndrun</bndrun>
+                    </bndruns>
+                    <failOnChanges>false</failOnChanges>
+                    <!-- enables passing -Dtck.test=<TestClass> on maven 
command line to run specific tests -->
+                    <test>${tck.test}</test>
+                </configuration>
+                <executions>
+                    <execution>
+                        <id>testing</id>
+                        <goals>
+                            <goal>testing</goal>
+                        </goals>
+                    </execution>
+                </executions>
+            </plugin>
         </plugins>
     </build>
 
diff --git a/itests/tck/runtests b/itests/tck/runtests
deleted file mode 100755
index bdd500af..00000000
--- a/itests/tck/runtests
+++ /dev/null
@@ -1,21 +0,0 @@
-# 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.
-
-cp org.osgi.test.cases.jpa.bnd target
-cd target
-java -jar lib/bnd-3.3.0.jar runtests --title osgi.ct
-cd ..
diff --git a/itests/tck/tck.bndrun b/itests/tck/tck.bndrun
index bca7e89f..756f0dd2 100644
--- a/itests/tck/tck.bndrun
+++ b/itests/tck/tck.bndrun
@@ -17,45 +17,91 @@
 #    under the License.
 #-standalone: target/index.xml
 
--runtrace = true
+-runtrace: true
 
--target = \
-    org.osgi.test.cases.remoteserviceadmin
+-target: org.osgi.test.cases.remoteserviceadmin
 
--runproperties = \
-    report="true", \
-    osgi.resolverMode="strict"
-    rsa.ct.timeout="300000", \
-    rsa.ct.timeout.factor="3"
-#    
org.osgi.test.cases.remoteserviceadmin.system.packages.extra="junit.framework;version=3.8",
 \
-#    
org.osgi.test.cases.remoteserviceadmin.bundles="jar/osgi.cmpn-5.0.0.jar,jar/org.osgi.impl.service.log-1.3.2.jar,jar/org.apache.cxf.dosgi.singlebundle-1.3.1.jar,jar/org.apache.cxf.dosgi.discovery.server.config-1.2.0.jar",
 \
-#    
org.osgi.test.cases.remoteserviceadmin.serverconfig="service.exported.configs,org.apache.cxf.ws.port",
 \
-#    service.exported.configs="org.apache.cxf.ws", \
-#    org.apache.cxf.ws.port="@@FREE_PORT@@"
+-runproperties:\
+    report="true",\
+    osgi.resolverMode="strict",\
+    rsa.ct.timeout=30000,\
+    rsa.ct.timeout.factor=3,\
+    rsa.tck.timeout=10000,\
+    service.exported.configs="aries.tcp",\
+    org.osgi.framework.system.packages.extra="\
+        org.osgi.service.remoteserviceadmin",\
+    org.osgi.test.cases.remoteserviceadmin.system.packages.extra="\
+        org.osgi.service.remoteserviceadmin,\
+        junit.framework",\
+    
org.osgi.test.cases.remoteserviceadmin.serverconfig="service.exported.configs",\
+    org.osgi.test.cases.remoteserviceadmin.bundles="\
+        ${repo;org.apache.aries.rsa.core;2.0.0.SNAPSHOT},\
+        ${repo;org.apache.aries.rsa.spi;2.0.0.SNAPSHOT},\
+        ${repo;org.apache.aries.rsa.topology-manager;2.0.0.SNAPSHOT},\
+        ${repo;org.apache.aries.rsa.discovery.local;2.0.0.SNAPSHOT},\
+        ${repo;org.apache.aries.rsa.discovery.tcp;2.0.0.SNAPSHOT},\
+        ${repo;org.apache.aries.rsa.provider.tcp;2.0.0.SNAPSHOT},\
+        ${repo;org.osgi.service.component;1.5.1},\
+        ${repo;org.osgi.util.function;1.2.0},\
+        ${repo;org.osgi.util.promise;1.3.0},\
+        ${repo;org.apache.felix.configadmin;1.9.26},\
+        ${repo;org.apache.felix.eventadmin;1.6.4},\
+        ${repo;org.apache.felix.scr;2.2.18},\
+        ${repo;org.apache.servicemix.bundles.junit;4.13.2},\
+        ${repo;org.ops4j.pax.logging.pax-logging-api;2.3.3},\
+        ${repo;org.ops4j.pax.logging.pax-logging-log4j2;2.3.3},\
+        ${repo;jakarta.activation-api;2.1.4},\
+        ${repo;jakarta.xml.bind-api;4.0.5},\
+        ${repo;com.sun.xml.bind.jaxb-impl;4.0.8},\
+        ${repo;com.sun.xml.bind.jaxb-core;4.0.8},\
+        ${repo;com.sun.istack.commons-runtime;4.2.0},\
+        ${repo;org.glassfish.hk2.osgi-resource-locator;3.0.0}",\
+    org.apache.aries.rsa.discovery.tcp.address=localhost:7668,\
+    org.apache.aries.rsa.discovery.tcp.peers=localhost:7669,\
+    org.apache.aries.rsa.bridge=true,\
+    org.osgi.test.cases.remoteserviceadmin.framework.properties="\
+        org.apache.aries.rsa.discovery.tcp.address=localhost:7669,\
+        org.apache.aries.rsa.discovery.tcp.peers=localhost:7668,\
+        org.apache.aries.rsa.bridge=true"
 
--runvm = \
-    -Xmx512m, -XX:MaxPermSize=350m
+-runvm:\
+    -Xmx512m
+    #,"-agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=5005"
 
--runsystempackages=javax.xml.stream; version=1.0, javax.xml.stream.events; 
version=1.0, javax.xml.stream.util; version=1.0
--runfw: org.eclipse.osgi;version='[3.8.0.v20120529-1548,3.8.0.v20120529-1548]'
--runee: JavaSE-1.8
--runrequires: \
+-runsystempackages:\
+    javax.xml.stream; version=1.0,\
+    javax.xml.stream.events; version=1.0,\
+    javax.xml.stream.util; version=1.0
+-runfw: org.eclipse.osgi;version='[3.24.100,3.24.101)'
+-runee: JavaSE-${java.specification.version}
+-runrequires:\
     
osgi.identity;filter:='(osgi.identity=org.osgi.test.cases.remoteserviceadmin)',\
     
osgi.identity;filter:='(osgi.identity=org.apache.aries.rsa.topology-manager)',\
-    
osgi.identity;filter:='(osgi.identity=org.ops4j.pax.logging.pax-logging-service)'
-
--runblacklist: \
-    osgi.identity;filter:='(osgi.identity=osgi.cmpn)',\
-    osgi.identity;filter:='(osgi.identity=slf4j.api)'
--runbundles: \
-    org.apache.aries.rsa.core;version='[1.10.0,1.10.1)',\
-    org.apache.aries.rsa.discovery.config;version='[1.10.0,1.10.1)',\
-    org.apache.aries.rsa.provider.tcp;version='[1.10.0,1.10.1)',\
-    org.apache.aries.rsa.spi;version='[1.10.0,1.10.1)',\
-    org.apache.aries.rsa.topology-manager;version='[1.10.0,1.10.1)',\
+    
osgi.identity;filter:='(osgi.identity=org.ops4j.pax.logging.pax-logging-log4j2)'
+-runblacklist:\
+    osgi.identity;filter:='(osgi.identity=osgi.cmpn)'
+-runbundles:\
+    org.apache.aries.rsa.core;version='[2.0.0,2.0.1)',\
+    org.apache.aries.rsa.spi;version='[2.0.0,2.0.1)',\
+    org.apache.aries.rsa.topology-manager;version='[2.0.0,2.0.1)',\
+    org.apache.aries.rsa.discovery.local;version='[2.0.0,2.0.1)',\
+    org.apache.aries.rsa.discovery.tcp;version='[2.0.0,2.0.1)',\
+    org.apache.aries.rsa.provider.tcp;version='[2.0.0,2.0.1)',\
+    org.osgi.service.component;version='[1.5.1,1.5.2)',\
+    org.osgi.util.function;version='[1.2.0,1.2.1)',\
+    org.osgi.util.promise;version='[1.3.0,1.3.1)',\
     org.apache.felix.configadmin;version='[1.9.26,1.9.27)',\
     org.apache.felix.eventadmin;version='[1.6.4,1.6.5)',\
-    org.apache.servicemix.bundles.junit;version='[3.8.2,3.8.3)',\
-    org.osgi.test.cases.remoteserviceadmin;version='[5.0.0,5.0.1)',\
-    org.ops4j.pax.logging.pax-logging-api;version='[1.11.17,1.11.18)',\
-    org.ops4j.pax.logging.pax-logging-service;version='[1.11.17,1.11.18)'
+    org.apache.felix.scr;version='[2.2.18,2.2.19)',\
+    org.apache.servicemix.bundles.junit;version='[4.13.2,4.13.3)',\
+    assertj-core;version='[3.27.7,3.27.8)',\
+    net.bytebuddy.byte-buddy;version='[1.18.8,1.18.9)',\
+    org.ops4j.pax.logging.pax-logging-api;version='[2.3.3,2.3.4)',\
+    org.ops4j.pax.logging.pax-logging-log4j2;version='[2.3.3,2.3.4)',\
+    jakarta.activation-api;version='[2.1.4,2.1.5)',\
+    jakarta.xml.bind-api;version='[4.0.5,4.0.6)',\
+    com.sun.xml.bind.jaxb-impl;version='[4.0.8,4.0.9)',\
+    com.sun.xml.bind.jaxb-core;version='[4.0.8,4.0.9)',\
+    com.sun.istack.commons-runtime;version='[4.2.0,4.2.1)',\
+    org.glassfish.hk2.osgi-resource-locator;version='[3.0.0,3.0.1)',\
+    org.osgi.test.cases.remoteserviceadmin;version='[8.1.0,8.1.1)'
diff --git a/parent/pom.xml b/parent/pom.xml
index 73db01ad..b680d865 100644
--- a/parent/pom.xml
+++ b/parent/pom.xml
@@ -33,7 +33,7 @@
 
     <properties>
         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
-        <bnd.version>6.4.0</bnd.version>
+        <bnd.version>7.2.3</bnd.version>
         <zookeeper.version>3.9.3_1</zookeeper.version>
         <netty.version>4.1.121.Final</netty.version>
         <slf4j.version>2.0.17</slf4j.version>
@@ -41,6 +41,7 @@
         <hawtdispatch.version>1.22</hawtdispatch.version>
         <hawtbuf.version>1.11</hawtbuf.version>
         <exam.version>4.13.5</exam.version>
+        <paxlogging.version>2.3.3</paxlogging.version>
     </properties>
 
     <dependencies>
@@ -472,6 +473,16 @@
                 </plugins>
             </build>
         </profile>
+        <profile>
+            <!-- bnd 7.x no longer supports Java 11, so we pin it to an older 
version that does -->
+            <id>legacy-jdk-bnd</id>
+            <activation>
+                <jdk>11</jdk>
+            </activation>
+            <properties>
+                <bnd.version>6.4.0</bnd.version>
+            </properties>
+        </profile>
     </profiles>
 
 </project>

Reply via email to