From b22e74379ae235846400ac427c5fd449327b524f Mon Sep 17 00:00:00 2001 From: Tpt Date: Sun, 16 Jul 2023 22:25:31 +0200 Subject: [PATCH] Run RDF canon tests to check isomorphism Automated report generation --- .gitmodules | 3 +++ testsuite/rdf-canon | 1 + testsuite/src/parser_evaluator.rs | 12 ++++++++++++ testsuite/tests/canonicalization.rs | 7 +++++++ 4 files changed, 23 insertions(+) create mode 160000 testsuite/rdf-canon create mode 100644 testsuite/tests/canonicalization.rs diff --git a/.gitmodules b/.gitmodules index 0c6310f6..fba23723 100644 --- a/.gitmodules +++ b/.gitmodules @@ -17,3 +17,6 @@ path = testsuite/N3 url = https://github.com/w3c/N3.git branch = master +[submodule "testsuite/rdf-canon"] + path = testsuite/rdf-canon + url = https://github.com/w3c/rdf-canon.git diff --git a/testsuite/rdf-canon b/testsuite/rdf-canon new file mode 160000 index 00000000..9b3efebe --- /dev/null +++ b/testsuite/rdf-canon @@ -0,0 +1 @@ +Subproject commit 9b3efebebe0e5338debfc4d3ddd02f6adf0a852c diff --git a/testsuite/src/parser_evaluator.rs b/testsuite/src/parser_evaluator.rs index 8e1a818c..975c2e9b 100644 --- a/testsuite/src/parser_evaluator.rs +++ b/testsuite/src/parser_evaluator.rs @@ -67,6 +67,18 @@ pub fn register_parser_tests(evaluator: &mut TestEvaluator) { evaluator.register("http://www.w3.org/ns/rdftest#TestTrigNegativeEval", |t| { evaluate_negative_dataset_syntax_test(t, DatasetFormat::TriG) }); + evaluator.register( + "https://w3c.github.io/rdf-canon/tests/vocab#RDFC10EvalTest", + |t| evaluate_positive_dataset_syntax_test(t, DatasetFormat::NQuads), //TODO: not a proper implementation! + ); + evaluator.register( + "https://w3c.github.io/rdf-canon/tests/vocab#RDFC10NegativeEvalTest", + |_| Ok(()), //TODO: not a proper implementation + ); + evaluator.register( + "https://w3c.github.io/rdf-canon/tests/vocab#RDFC10MapTest", + |_| Ok(()), //TODO: not a proper implementation + ); evaluator.register( "https://github.com/oxigraph/oxigraph/tests#TestNTripleRecovery", |t| evaluate_graph_eval_test(t, GraphFormat::NTriples, true), diff --git a/testsuite/tests/canonicalization.rs b/testsuite/tests/canonicalization.rs new file mode 100644 index 00000000..115e5c5a --- /dev/null +++ b/testsuite/tests/canonicalization.rs @@ -0,0 +1,7 @@ +use anyhow::Result; +use oxigraph_testsuite::check_testsuite; + +#[test] +fn rdf_canon_w3c_testsuite() -> Result<()> { + check_testsuite("http://w3c.github.io/rdf-canon/tests/manifest.ttl", &[]) +}