diff options
author | Carlos Garnacho <carlosg@gnome.org> | 2018-12-25 20:35:46 +0100 |
---|---|---|
committer | Carlos Garnacho <carlosg@gnome.org> | 2018-12-26 13:21:38 +0100 |
commit | 7e09abe116b4dcedf177f3cf8f66ce347a4a8075 (patch) | |
tree | 262619eb5fce345b0d9d474245f107fac0d2d21c | |
parent | 0d5c1a65f5a1ea331d438b863e9b6fff14b2dff3 (diff) | |
download | tracker-wip/carlosg/property-paths.tar.gz |
tests: Add a bunch of property path testswip/carlosg/property-paths
Alternative, recursive, optional paths are tested, and combinations
of those.
25 files changed, 56 insertions, 0 deletions
diff --git a/tests/libtracker-data/property-paths/alternative-path-1.out b/tests/libtracker-data/property-paths/alternative-path-1.out new file mode 100644 index 000000000..d4ba27789 --- /dev/null +++ b/tests/libtracker-data/property-paths/alternative-path-1.out @@ -0,0 +1,5 @@ +"Alice" "Bob" +"Alice" "Foo" +"Bob" "Alice" +"Bob" "Foo" +"Eve" "Fred" diff --git a/tests/libtracker-data/property-paths/alternative-path-1.rq b/tests/libtracker-data/property-paths/alternative-path-1.rq new file mode 100644 index 000000000..ddd3a0732 --- /dev/null +++ b/tests/libtracker-data/property-paths/alternative-path-1.rq @@ -0,0 +1 @@ +select foaf:name(?u) foaf:name(?a) { ?u a foaf:Person . ?u foaf:knows|foaf:member ?a } order by foaf:name(?u) foaf:name(?a)
\ No newline at end of file diff --git a/tests/libtracker-data/property-paths/alternative-path-2.out b/tests/libtracker-data/property-paths/alternative-path-2.out new file mode 100644 index 000000000..ef0350743 --- /dev/null +++ b/tests/libtracker-data/property-paths/alternative-path-2.out @@ -0,0 +1 @@ +"Alice" diff --git a/tests/libtracker-data/property-paths/alternative-path-2.rq b/tests/libtracker-data/property-paths/alternative-path-2.rq new file mode 100644 index 000000000..b90ecc092 --- /dev/null +++ b/tests/libtracker-data/property-paths/alternative-path-2.rq @@ -0,0 +1 @@ +select foaf:name(?u) { ?u a foaf:Person . ?u foaf:name|(foaf:member/foaf:name) "Alice" } order by foaf:name(?u)
\ No newline at end of file diff --git a/tests/libtracker-data/property-paths/mixed-inverse-and-sequence-3.out b/tests/libtracker-data/property-paths/mixed-inverse-and-sequence-3.out new file mode 100644 index 000000000..d12a7b1c3 --- /dev/null +++ b/tests/libtracker-data/property-paths/mixed-inverse-and-sequence-3.out @@ -0,0 +1,2 @@ +"Alice" "Alice" +"Bob" "Bob" diff --git a/tests/libtracker-data/property-paths/mixed-inverse-and-sequence-3.rq b/tests/libtracker-data/property-paths/mixed-inverse-and-sequence-3.rq new file mode 100644 index 000000000..3383f36b8 --- /dev/null +++ b/tests/libtracker-data/property-paths/mixed-inverse-and-sequence-3.rq @@ -0,0 +1 @@ +select foaf:name(?a) foaf:name(?b) { ?a ^(foaf:knows/foaf:knows) ?b } order by foaf:name(?a) foaf:name(?b)
\ No newline at end of file diff --git a/tests/libtracker-data/property-paths/mixed-recursive-and-alternative-1.out b/tests/libtracker-data/property-paths/mixed-recursive-and-alternative-1.out new file mode 100644 index 000000000..878be5329 --- /dev/null +++ b/tests/libtracker-data/property-paths/mixed-recursive-and-alternative-1.out @@ -0,0 +1,7 @@ +"Alice" "Alice" +"Alice" "Bob" +"Alice" "Foo" +"Bob" "Alice" +"Bob" "Bob" +"Bob" "Foo" +"Eve" "Fred" diff --git a/tests/libtracker-data/property-paths/mixed-recursive-and-alternative-1.rq b/tests/libtracker-data/property-paths/mixed-recursive-and-alternative-1.rq new file mode 100644 index 000000000..44d2d7f88 --- /dev/null +++ b/tests/libtracker-data/property-paths/mixed-recursive-and-alternative-1.rq @@ -0,0 +1 @@ +select foaf:name(?u) foaf:name(?a) { ?u foaf:knows+|foaf:member ?a } order by foaf:name(?u) foaf:name(?a)
\ No newline at end of file diff --git a/tests/libtracker-data/property-paths/mixed-recursive-and-alternative-2.out b/tests/libtracker-data/property-paths/mixed-recursive-and-alternative-2.out new file mode 100644 index 000000000..878be5329 --- /dev/null +++ b/tests/libtracker-data/property-paths/mixed-recursive-and-alternative-2.out @@ -0,0 +1,7 @@ +"Alice" "Alice" +"Alice" "Bob" +"Alice" "Foo" +"Bob" "Alice" +"Bob" "Bob" +"Bob" "Foo" +"Eve" "Fred" diff --git a/tests/libtracker-data/property-paths/mixed-recursive-and-alternative-2.rq b/tests/libtracker-data/property-paths/mixed-recursive-and-alternative-2.rq new file mode 100644 index 000000000..7f4c969c5 --- /dev/null +++ b/tests/libtracker-data/property-paths/mixed-recursive-and-alternative-2.rq @@ -0,0 +1 @@ +select foaf:name(?u) foaf:name(?a) { ?u (foaf:knows|foaf:member)+ ?a } order by foaf:name(?u) foaf:name(?a)
\ No newline at end of file diff --git a/tests/libtracker-data/property-paths/mixed-recursive-and-inverse-1.out b/tests/libtracker-data/property-paths/mixed-recursive-and-inverse-1.out new file mode 100644 index 000000000..0c64aed0a --- /dev/null +++ b/tests/libtracker-data/property-paths/mixed-recursive-and-inverse-1.out @@ -0,0 +1 @@ +"Fred" "Eve" diff --git a/tests/libtracker-data/property-paths/mixed-recursive-and-inverse-1.rq b/tests/libtracker-data/property-paths/mixed-recursive-and-inverse-1.rq new file mode 100644 index 000000000..a43469234 --- /dev/null +++ b/tests/libtracker-data/property-paths/mixed-recursive-and-inverse-1.rq @@ -0,0 +1 @@ +select foaf:name(?u) foaf:name(?a) { ?u ^foaf:knows+ ?a . ?u foaf:name 'Fred' }
\ No newline at end of file diff --git a/tests/libtracker-data/property-paths/mixed-recursive-and-inverse-2.out b/tests/libtracker-data/property-paths/mixed-recursive-and-inverse-2.out new file mode 100644 index 000000000..0c64aed0a --- /dev/null +++ b/tests/libtracker-data/property-paths/mixed-recursive-and-inverse-2.out @@ -0,0 +1 @@ +"Fred" "Eve" diff --git a/tests/libtracker-data/property-paths/mixed-recursive-and-inverse-2.rq b/tests/libtracker-data/property-paths/mixed-recursive-and-inverse-2.rq new file mode 100644 index 000000000..ebda97c36 --- /dev/null +++ b/tests/libtracker-data/property-paths/mixed-recursive-and-inverse-2.rq @@ -0,0 +1 @@ +select foaf:name(?u) foaf:name(?a) { ?u ^(foaf:knows+) ?a . ?u foaf:name 'Fred' }
\ No newline at end of file diff --git a/tests/libtracker-data/property-paths/mixed-recursive-and-inverse-3.out b/tests/libtracker-data/property-paths/mixed-recursive-and-inverse-3.out new file mode 100644 index 000000000..0c64aed0a --- /dev/null +++ b/tests/libtracker-data/property-paths/mixed-recursive-and-inverse-3.out @@ -0,0 +1 @@ +"Fred" "Eve" diff --git a/tests/libtracker-data/property-paths/mixed-recursive-and-inverse-3.rq b/tests/libtracker-data/property-paths/mixed-recursive-and-inverse-3.rq new file mode 100644 index 000000000..3b5416657 --- /dev/null +++ b/tests/libtracker-data/property-paths/mixed-recursive-and-inverse-3.rq @@ -0,0 +1 @@ +select foaf:name(?u) foaf:name(?a) { ?u (^foaf:knows)+ ?a . ?u foaf:name 'Fred' }
\ No newline at end of file diff --git a/tests/libtracker-data/property-paths/mixed-recursive-and-sequence-1.out b/tests/libtracker-data/property-paths/mixed-recursive-and-sequence-1.out new file mode 100644 index 000000000..ac2dc970e --- /dev/null +++ b/tests/libtracker-data/property-paths/mixed-recursive-and-sequence-1.out @@ -0,0 +1,2 @@ +"Alice" +"Bob" diff --git a/tests/libtracker-data/property-paths/mixed-recursive-and-sequence-1.rq b/tests/libtracker-data/property-paths/mixed-recursive-and-sequence-1.rq new file mode 100644 index 000000000..1771d11d2 --- /dev/null +++ b/tests/libtracker-data/property-paths/mixed-recursive-and-sequence-1.rq @@ -0,0 +1 @@ +select foaf:name(?u) { ?u foaf:knows*/foaf:name 'Alice' } order by foaf:name(?u)
\ No newline at end of file diff --git a/tests/libtracker-data/property-paths/optional-path-1.out b/tests/libtracker-data/property-paths/optional-path-1.out new file mode 100644 index 000000000..525aee442 --- /dev/null +++ b/tests/libtracker-data/property-paths/optional-path-1.out @@ -0,0 +1,2 @@ +"Alice" "Alice" +"Alice" "Bob" diff --git a/tests/libtracker-data/property-paths/optional-path-1.rq b/tests/libtracker-data/property-paths/optional-path-1.rq new file mode 100644 index 000000000..d1da57abb --- /dev/null +++ b/tests/libtracker-data/property-paths/optional-path-1.rq @@ -0,0 +1 @@ +select foaf:name(?u) foaf:name(?a) { ?u foaf:name 'Alice'; foaf:knows? ?a } order by foaf:name(?u) foaf:name(?a)
\ No newline at end of file diff --git a/tests/libtracker-data/property-paths/recursive-path-1.out b/tests/libtracker-data/property-paths/recursive-path-1.out new file mode 100644 index 000000000..525aee442 --- /dev/null +++ b/tests/libtracker-data/property-paths/recursive-path-1.out @@ -0,0 +1,2 @@ +"Alice" "Alice" +"Alice" "Bob" diff --git a/tests/libtracker-data/property-paths/recursive-path-1.rq b/tests/libtracker-data/property-paths/recursive-path-1.rq new file mode 100644 index 000000000..9bd80f372 --- /dev/null +++ b/tests/libtracker-data/property-paths/recursive-path-1.rq @@ -0,0 +1 @@ +select foaf:name(?u) foaf:name(?a) { ?u foaf:knows* ?a . FILTER (foaf:name(?u) = 'Alice') }
\ No newline at end of file diff --git a/tests/libtracker-data/property-paths/recursive-path-2.out b/tests/libtracker-data/property-paths/recursive-path-2.out new file mode 100644 index 000000000..a02d506ff --- /dev/null +++ b/tests/libtracker-data/property-paths/recursive-path-2.out @@ -0,0 +1 @@ +"Alice" "Bob" diff --git a/tests/libtracker-data/property-paths/recursive-path-2.rq b/tests/libtracker-data/property-paths/recursive-path-2.rq new file mode 100644 index 000000000..1ed508ee4 --- /dev/null +++ b/tests/libtracker-data/property-paths/recursive-path-2.rq @@ -0,0 +1 @@ +select foaf:name(?u) foaf:name(?a) { ?u foaf:knows+ ?a . FILTER (?u != ?a && foaf:name(?u) = 'Alice') } order by foaf:name(?u) foaf:name(?a)
\ No newline at end of file diff --git a/tests/libtracker-data/tracker-sparql-test.c b/tests/libtracker-data/tracker-sparql-test.c index 33a98fb11..2db5166ae 100644 --- a/tests/libtracker-data/tracker-sparql-test.c +++ b/tests/libtracker-data/tracker-sparql-test.c @@ -155,8 +155,20 @@ const TestInfo tests[] = { { "property-paths/sequence-path-1", "property-paths/data", FALSE }, { "property-paths/sequence-path-2", "property-paths/data", FALSE }, { "property-paths/sequence-path-3", "property-paths/data", FALSE }, + { "property-paths/optional-path-1", "property-paths/data", FALSE }, + { "property-paths/recursive-path-1", "property-paths/data", FALSE }, + { "property-paths/recursive-path-2", "property-paths/data", FALSE }, + { "property-paths/alternative-path-1", "property-paths/data", FALSE }, + { "property-paths/alternative-path-2", "property-paths/data", FALSE }, { "property-paths/mixed-inverse-and-sequence-1", "property-paths/data", FALSE }, { "property-paths/mixed-inverse-and-sequence-2", "property-paths/data", FALSE }, + { "property-paths/mixed-inverse-and-sequence-3", "property-paths/data", FALSE }, + { "property-paths/mixed-recursive-and-sequence-1", "property-paths/data", FALSE }, + { "property-paths/mixed-recursive-and-alternative-1", "property-paths/data", FALSE }, + { "property-paths/mixed-recursive-and-alternative-2", "property-paths/data", FALSE }, + { "property-paths/mixed-recursive-and-inverse-1", "property-paths/data", FALSE }, + { "property-paths/mixed-recursive-and-inverse-2", "property-paths/data", FALSE }, + { "property-paths/mixed-recursive-and-inverse-3", "property-paths/data", FALSE }, /* Update tests */ { "update/insert-data-query-1", "update/insert-data-1", FALSE, FALSE }, { "update/insert-data-query-2", "update/insert-data-2", FALSE, TRUE }, |