This is an automated email from the ASF dual-hosted git repository. andy pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/jena.git
commit d96e3c926fa8c422aa5a99153ea874db57080be4 Author: Andy Seaborne <[email protected]> AuthorDate: Mon Mar 16 16:07:05 2026 +0000 GH-3790: Integrate RRX 1.2 tests --- .../jena/riot/lang/rdfxml/TC_RIOT_RDFXML.java | 11 +++- .../org/apache/jena/riot/lang/rdfxml/TM_RRX11.java | 61 ++++++++++++++++++++ .../org/apache/jena/riot/lang/rdfxml/TM_RRX12.java | 65 ++++++++++++++++++++++ .../apache/jena/riot/lang/rdfxml/rrx/TS_RRX.java | 4 +- .../rrx/{TestExtraRRX.java => TestExtraRRX11.java} | 5 +- .../org/apache/jena/riot/writer/TS_RiotWriter.java | 2 + .../TestRDFXMLWriter12.java} | 4 +- 7 files changed, 142 insertions(+), 10 deletions(-) diff --git a/jena-arq/src/test/java/org/apache/jena/riot/lang/rdfxml/TC_RIOT_RDFXML.java b/jena-arq/src/test/java/org/apache/jena/riot/lang/rdfxml/TC_RIOT_RDFXML.java index 6a7b4c9572..e38178cfaa 100644 --- a/jena-arq/src/test/java/org/apache/jena/riot/lang/rdfxml/TC_RIOT_RDFXML.java +++ b/jena-arq/src/test/java/org/apache/jena/riot/lang/rdfxml/TC_RIOT_RDFXML.java @@ -31,11 +31,12 @@ import org.apache.jena.riot.lang.rdfxml.rrx.TS_RRX; @SelectClasses({ // Local tests, extensions and error reports. TS_RRX.class, - // Additional writer tests. RDF 1.2 features. Setup using Turtle. - TestOutputRDFXML.class, // jena-core legacy test (RDF 1.0) - TS_ConvertedARP1.class + TS_ConvertedARP1.class, + + TM_RRX11.class, + TM_RRX12.class }) /** @@ -54,5 +55,9 @@ import org.apache.jena.riot.lang.rdfxml.rrx.TS_RRX; * <p> * ARP1 is ARP is the RDFXML parser using IRIx in Jena4 from Jena 4.7.0. * RRX SAX is the default RDF/XML parser since Jena 5.0.0. + * <p> + * TM_RRX11 - more RDF 1.1 tests (from RRX 1.2 development) in "RIOT/rrx11-2" + * TM_RRX12 - RDF 1.2 tests in "RIOT/rrx12" + * */ public class TC_RIOT_RDFXML {} diff --git a/jena-arq/src/test/java/org/apache/jena/riot/lang/rdfxml/TM_RRX11.java b/jena-arq/src/test/java/org/apache/jena/riot/lang/rdfxml/TM_RRX11.java new file mode 100644 index 0000000000..af6150fea5 --- /dev/null +++ b/jena-arq/src/test/java/org/apache/jena/riot/lang/rdfxml/TM_RRX11.java @@ -0,0 +1,61 @@ +/* + * 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 + * + * https://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. + * + * SPDX-License-Identifier: Apache-2.0 + */ + +package org.apache.jena.riot.lang.rdfxml; + +import static org.apache.jena.arq.junit.Scripts.withAltParserFactory; + +import java.util.stream.Stream; + +import org.junit.jupiter.api.*; + +import org.apache.jena.riot.Lang; +import org.apache.jena.riot.lang.rdfxml.rrx.ReaderRDFXML_SAX; +import org.apache.jena.riot.lang.rdfxml.rrx_stax_ev.ReaderRDFXML_StAX_EV; +import org.apache.jena.riot.lang.rdfxml.rrx_stax_sr.ReaderRDFXML_StAX_SR; + +/** Non-RDF1.2 tests */ +@TestMethodOrder(MethodOrderer.OrderAnnotation.class) +public class TM_RRX11 { + private static String DIR = "testing/RIOT/rrx11-2"; + private static String MANIFEST_MISC_RDFXML = DIR+"/manifest.ttl"; + + @TestFactory + @Order(1) + @DisplayName("RIOT RRX 11-2 SAX") + public Stream<DynamicNode> testFactory1() { + return withAltParserFactory(Lang.RDFXML, ReaderRDFXML_SAX.factory, MANIFEST_MISC_RDFXML); + } + + @TestFactory + @Order(2) + @DisplayName("RIOT RRX 11-2 StAXev") + public Stream<DynamicNode> testFactory2() { + return withAltParserFactory(Lang.RDFXML, ReaderRDFXML_StAX_EV.factory, MANIFEST_MISC_RDFXML); + } + + @TestFactory + @Order(3) + @DisplayName("RIOT RRX 11-2 StAXsr") + public Stream<DynamicNode> testFactory3() { + return withAltParserFactory(Lang.RDFXML, ReaderRDFXML_StAX_SR.factory, MANIFEST_MISC_RDFXML); + } +} diff --git a/jena-arq/src/test/java/org/apache/jena/riot/lang/rdfxml/TM_RRX12.java b/jena-arq/src/test/java/org/apache/jena/riot/lang/rdfxml/TM_RRX12.java new file mode 100644 index 0000000000..9a6456c1cc --- /dev/null +++ b/jena-arq/src/test/java/org/apache/jena/riot/lang/rdfxml/TM_RRX12.java @@ -0,0 +1,65 @@ +/* + * 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 + * + * https://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. + * + * SPDX-License-Identifier: Apache-2.0 + */ + +package org.apache.jena.riot.lang.rdfxml; + +import static org.apache.jena.arq.junit.Scripts.withAltParserFactory; + +import java.util.stream.Stream; + +import org.junit.jupiter.api.*; + +import org.apache.jena.riot.Lang; +import org.apache.jena.riot.lang.rdfxml.rrx.ReaderRDFXML_SAX; +import org.apache.jena.riot.lang.rdfxml.rrx_stax_ev.ReaderRDFXML_StAX_EV; +import org.apache.jena.riot.lang.rdfxml.rrx_stax_sr.ReaderRDFXML_StAX_SR; + +// RDF 1.2 tests +@TestMethodOrder(MethodOrderer.OrderAnnotation.class) +public class TM_RRX12 { + + //private static String DIR = "testing/RIOT/rrx12"; + private static String DIR = "testing/RIOT/rrx12"; + private static String MANIFEST_RDFXML = DIR+"/manifest.ttl"; + + @TestFactory + @Order(1) + @DisplayName("RIOT RRX12 SAX") + public Stream<DynamicNode> testFactory1() { + return withAltParserFactory(Lang.RDFXML, ReaderRDFXML_SAX.factory, MANIFEST_RDFXML); + } + + @TestFactory + @Order(2) + @DisplayName("RIOT RRX12 StAXev") + public Stream<DynamicNode> testFactory2() { + return withAltParserFactory(Lang.RDFXML, ReaderRDFXML_StAX_EV.factory, MANIFEST_RDFXML); + } + + @TestFactory + @Order(3) + @DisplayName("RIOT RRX12 StAXsr") + public Stream<DynamicNode> testFactory3() { + return withAltParserFactory(Lang.RDFXML, ReaderRDFXML_StAX_SR.factory, MANIFEST_RDFXML); + } + + // --- Move somewhere +} diff --git a/jena-arq/src/test/java/org/apache/jena/riot/lang/rdfxml/rrx/TS_RRX.java b/jena-arq/src/test/java/org/apache/jena/riot/lang/rdfxml/rrx/TS_RRX.java index e2266d297f..02d6c937d9 100644 --- a/jena-arq/src/test/java/org/apache/jena/riot/lang/rdfxml/rrx/TS_RRX.java +++ b/jena-arq/src/test/java/org/apache/jena/riot/lang/rdfxml/rrx/TS_RRX.java @@ -39,8 +39,8 @@ import org.junit.platform.suite.api.Suite; Test_RRX_W3C_StAXev.class, Test_RRX_W3C_StAXsr.class, - // Additional RRX specific tests. - TestExtraRRX.class + // Additional RRX specific tests. "rrx11-files" + TestExtraRRX11.class }) public class TS_RRX {} diff --git a/jena-arq/src/test/java/org/apache/jena/riot/lang/rdfxml/rrx/TestExtraRRX.java b/jena-arq/src/test/java/org/apache/jena/riot/lang/rdfxml/rrx/TestExtraRRX11.java similarity index 99% rename from jena-arq/src/test/java/org/apache/jena/riot/lang/rdfxml/rrx/TestExtraRRX.java rename to jena-arq/src/test/java/org/apache/jena/riot/lang/rdfxml/rrx/TestExtraRRX11.java index 02de07683d..d568deeae6 100644 --- a/jena-arq/src/test/java/org/apache/jena/riot/lang/rdfxml/rrx/TestExtraRRX.java +++ b/jena-arq/src/test/java/org/apache/jena/riot/lang/rdfxml/rrx/TestExtraRRX11.java @@ -60,7 +60,7 @@ import org.apache.jena.riot.system.StreamRDFWriter; @ParameterizedClass @MethodSource("provideArgs") -public class TestExtraRRX { +public class TestExtraRRX11 { private static String DIR = "testing/RIOT/rrx11-files/"; @@ -78,7 +78,7 @@ public class TestExtraRRX { private String label; private Lang lang; - public TestExtraRRX(TestArgs args) { + public TestExtraRRX11(TestArgs args) { this.label = args.label; this.lang = args.lang; } @@ -267,7 +267,6 @@ public class TestExtraRRX { checkForError(filename, false); } - /** * Run test, expecting an error. If the second argument is true, also Compare to * make sure it is the same as ARP. diff --git a/jena-arq/src/test/java/org/apache/jena/riot/writer/TS_RiotWriter.java b/jena-arq/src/test/java/org/apache/jena/riot/writer/TS_RiotWriter.java index 8e8f78b61a..4664002548 100644 --- a/jena-arq/src/test/java/org/apache/jena/riot/writer/TS_RiotWriter.java +++ b/jena-arq/src/test/java/org/apache/jena/riot/writer/TS_RiotWriter.java @@ -37,6 +37,8 @@ import org.junit.platform.suite.api.Suite; , TestWriterRDFXML.class , TestWriterRDFXML_Properties.class + // Additional writer tests. RDF 1.2 features. Setup using Turtle. + , TestRDFXMLWriter12.class , TestTriXWriter.class , TestRDFJSON.class diff --git a/jena-arq/src/test/java/org/apache/jena/riot/lang/rdfxml/TestOutputRDFXML.java b/jena-arq/src/test/java/org/apache/jena/riot/writer/TestRDFXMLWriter12.java similarity index 99% rename from jena-arq/src/test/java/org/apache/jena/riot/lang/rdfxml/TestOutputRDFXML.java rename to jena-arq/src/test/java/org/apache/jena/riot/writer/TestRDFXMLWriter12.java index b4eed94978..e8c94fa37b 100644 --- a/jena-arq/src/test/java/org/apache/jena/riot/lang/rdfxml/TestOutputRDFXML.java +++ b/jena-arq/src/test/java/org/apache/jena/riot/writer/TestRDFXMLWriter12.java @@ -19,7 +19,7 @@ * SPDX-License-Identifier: Apache-2.0 */ -package org.apache.jena.riot.lang.rdfxml; +package org.apache.jena.riot.writer; import static org.junit.jupiter.api.Assertions.fail; @@ -32,7 +32,7 @@ import org.apache.jena.sparql.util.IsoMatcher; import org.apache.jena.sys.JenaSystem; /** RDFXML writer tests using Turtle to setup the test case. */ -public class TestOutputRDFXML { +public class TestRDFXMLWriter12 { static { JenaSystem.init(); }
