Add some test for RDF-star datasets

This commit is contained in:
Marcel Otto 2021-11-09 00:59:45 +01:00
parent e9e2855d7b
commit 89947590cb
2 changed files with 46 additions and 0 deletions

View file

@ -227,4 +227,7 @@ defmodule RDF.Test.Case do
@graph_with_annotations Graph.new(init: [@annotation, @object_annotation])
def graph_with_annotations(), do: @graph_with_annotations
@dataset_with_annotation Dataset.new(init: @annotation)
def dataset_with_annotation(), do: @dataset_with_annotation
end

View file

@ -0,0 +1,43 @@
defmodule RDF.Star.Dataset.Test do
use RDF.Test.Case
test "add/3" do
dataset =
dataset()
|> Dataset.add({statement(), EX.ap1(), EX.AO1})
|> Dataset.add({statement(), EX.ap2(), "foo", EX.Graph})
|> Dataset.add({statement(), EX.ap3(), statement(), EX.Graph})
assert dataset_includes_statement?(dataset, {statement(), EX.ap1(), RDF.iri(EX.AO1)})
assert dataset_includes_statement?(
dataset,
{statement(), EX.ap2(), ~L"foo", RDF.iri(EX.Graph)}
)
assert dataset_includes_statement?(
dataset,
{statement(), EX.ap3(), statement(), RDF.iri(EX.Graph)}
)
end
test "put/3" do
dataset =
dataset()
|> Dataset.put({statement(), EX.ap1(), EX.AO1})
|> Dataset.put({statement(), EX.ap2(), "foo", EX.Graph})
|> Dataset.put({statement(), EX.ap3(), EX.AO3})
refute dataset_includes_statement?(dataset, {statement(), EX.ap1(), RDF.iri(EX.AO1)})
assert dataset_includes_statement?(dataset, {statement(), EX.ap3(), RDF.iri(EX.AO3)})
assert dataset_includes_statement?(
dataset,
{statement(), EX.ap2(), ~L"foo", RDF.iri(EX.Graph)}
)
end
test "delete/3" do
assert Dataset.delete(dataset_with_annotation(), annotation()) == dataset()
end
end