Skip to content

Test cases producer 3 (quads)#60

Merged
Ostrzyciel merged 3 commits intomainfrom
test-cases-producer-3
Apr 30, 2025
Merged

Test cases producer 3 (quads)#60
Ostrzyciel merged 3 commits intomainfrom
test-cases-producer-3

Conversation

@adanilenka
Copy link
Collaborator

Relates to #39

Implements test cases for the QUADS 1.1 for the producer:

  • conformance to RDF 1.1 expectations from the graph node (BN, IRI, default graph)
  • repeated term usage in every term possible, including multiframe streams
  • lookup tables reuse across frames

@adanilenka adanilenka requested a review from Ostrzyciel April 30, 2025 12:17
## Negative cases

TODO: include info in the manifest on why and how should the producer fail
- `neg_001` – a set of quads with RDF 1.1 non-conformant terms for s, p, o, g. Stream options from `pos_001`.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not sure how does this test case make sense in the producer context. Jelly-JVM will simply pass this through, without checks. I think we talked about this, it is the responsibility of the user to ensure this, so this test case makes no sense. Unless I'm missing something / forgot something....

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

we talked about it today :) The specification requires the user to make sure the generalized statements option conforms with the actual data and rdf validate command catches this mismatch instantly, so to me the question is only where to place this test here or in the quads_1_1_generalized cases

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Generalized then. This test can't be executed at all by a non-generalized RDF processor, and the spec only demands implication:

isGenRdfUsed => generalized_statements = 1


[NOTE]: Generalized RDF test cases require a generalized N-Triples parser. If the library does not implement gen RDF, then the generalized RDF tests should be skipped
[NOTES]:
1. Generalized RDF test cases require a generalized N-Triples parser. If the library does not implement gen RDF, then the generalized RDF tests should be skipped
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do you mean the negative cases? Or just tests in rdf_1_1_generalized, which don't exist yet?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

both -- negative cases that misuse generalied_statements option and future rdf_1_1_generalized

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

But here we just settled that the misuse cases won't be here. So, please clarify that this is only about the latter.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

well, now it will be only for rdf_1_1_generalized where the current negative cases will migrate

@adanilenka
Copy link
Collaborator Author

@Ostrzyciel the sketchy negative test was removed and the readme was reworded a bit

@Ostrzyciel Ostrzyciel merged commit 47f9314 into main Apr 30, 2025
10 checks passed
@Ostrzyciel Ostrzyciel deleted the test-cases-producer-3 branch April 30, 2025 13:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants