rift-java-conformance
Used in:
components
- OverviewOverview
- VersionsVersions
- DependentsDependents
- DependenciesDependencies
<dependency>
<groupId>io.github.achird-labs</groupId>
<artifactId>rift-java-conformance</artifactId>
<version>0.2.3</version>
</dependency><?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/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>io.github.achird-labs</groupId>
<artifactId>rift-java-parent</artifactId>
<version>0.2.3</version>
</parent>
<artifactId>rift-java-conformance</artifactId>
<name>rift-java-conformance</name>
<description>SDK conformance suite: replays the engine's published corpus over the spawn and embedded transports.</description>
<properties>
<!-- Test-only harness: never published to Central. -->
<maven.deploy.skip>true</maven.deploy.skip>
<!-- Passed through to the embedded lanes' test JVM; override with -Drift.ffi.lib=<cdylib>. -->
<rift.ffi.lib></rift.ffi.lib>
</properties>
<dependencies>
<dependency>
<groupId>io.github.achird-labs</groupId>
<artifactId>rift-java-core</artifactId>
</dependency>
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-api</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-engine</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<!-- Pure gates (parse fidelity, DSL expressibility) run as *Test; the engine-backed
replay runs as *IT and self-skips unless RIFT_IT=1 and a corpus/engine are present. -->
<includes>
<include>**/*Test.java</include>
<include>**/*IT.java</include>
</includes>
</configuration>
</plugin>
</plugins>
</build>
<profiles>
<!-- The EMBEDDED transport needs rift-java-embedded on the test classpath, which only builds on
JDK 22+ (stable FFM). Gated to the same JDK range as the module itself, so the JDK-17 baseline
build still resolves. Under JDK 17 the embedded provider is simply absent and the EMBEDDED
lane self-skips. -->
<profile>
<id>conformance-embedded</id>
<activation>
<jdk>[22,)</jdk>
</activation>
<dependencies>
<dependency>
<groupId>io.github.achird-labs</groupId>
<artifactId>rift-java-embedded</artifactId>
<version>${project.version}</version>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<argLine>--enable-native-access=ALL-UNNAMED</argLine>
<systemPropertyVariables>
<rift.ffi.lib>${rift.ffi.lib}</rift.ffi.lib>
</systemPropertyVariables>
</configuration>
</plugin>
</plugins>
</build>
</profile>
<!-- JDK 21 preview-FFM variant: same, against rift-java-embedded-jdk21 with preview enabled. -->
<profile>
<id>conformance-embedded-jdk21</id>
<activation>
<jdk>21</jdk>
</activation>
<dependencies>
<dependency>
<groupId>io.github.achird-labs</groupId>
<artifactId>rift-java-embedded-jdk21</artifactId>
<version>${project.version}</version>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<argLine>--enable-preview --enable-native-access=ALL-UNNAMED</argLine>
<systemPropertyVariables>
<rift.ffi.lib>${rift.ffi.lib}</rift.ffi.lib>
</systemPropertyVariables>
</configuration>
</plugin>
</plugins>
</build>
</profile>
</profiles>
</project>