[tracker] Add tests for tracker convience sparql functions.



commit 9f8719dd33ca2ce5a350fcaa350e071f4d39a1aa
Author: Mikael Ottela <mikael ottela ixonos com>
Date:   Thu Jan 14 10:19:31 2010 +0200

    Add tests for tracker convience sparql functions.

 tests/libtracker-data/functions/Makefile.am        |    6 ++++--
 tests/libtracker-data/functions/data-2.ontology    |   20 ++++++++++++++++++++
 tests/libtracker-data/functions/data-2.ttl         |   12 ++++++++++++
 .../functions/functions-tracker-2.out              |    3 +++
 .../functions/functions-tracker-2.rq               |    9 +++++++++
 tests/libtracker-data/tracker-sparql-test.c        |    1 +
 6 files changed, 49 insertions(+), 2 deletions(-)
---
diff --git a/tests/libtracker-data/functions/Makefile.am b/tests/libtracker-data/functions/Makefile.am
index 2745989..e8d8fd9 100644
--- a/tests/libtracker-data/functions/Makefile.am
+++ b/tests/libtracker-data/functions/Makefile.am
@@ -3,12 +3,14 @@ include $(top_srcdir)/Makefile.decl
 EXTRA_DIST = 				\
 	data-1.ontology			\
 	data-1.ttl			\
+	data-2.ontology			\
+	data-2.ttl			\
 	functions-property-1.out	\
 	functions-property-1.rq		\
 	functions-tracker-1.out		\
 	functions-tracker-1.rq		\
-	functions-xpath-1.out		\
-	functions-xpath-1.rq		\
+	functions-tracker-2.out		\
+	functions-tracker-2.rq		\
 	functions-xpath-1.out		\
 	functions-xpath-1.rq		\
 	functions-xpath-2.out		\
diff --git a/tests/libtracker-data/functions/data-2.ontology b/tests/libtracker-data/functions/data-2.ontology
new file mode 100644
index 0000000..0ea448f
--- /dev/null
+++ b/tests/libtracker-data/functions/data-2.ontology
@@ -0,0 +1,20 @@
+ prefix example: <http://example/> .
+ prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
+ prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
+ prefix tracker: <http://www.tracker-project.org/ontologies/tracker#> .
+ prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
+ prefix ns: <http://www.w3.org/2005/xpath-functions#> .
+
+example: a tracker:Namespace ;
+	tracker:prefix "example" .
+
+example:A a rdfs:Class ;
+	rdfs:subClassOf rdfs:Resource .
+
+example:title a rdf:Property ;
+	rdfs:domain example:A ;
+	rdfs:range xsd:string .
+
+example:filename a rdf:Property ;
+	rdfs:domain example:A ;
+	rdfs:range xsd:string .
diff --git a/tests/libtracker-data/functions/data-2.ttl b/tests/libtracker-data/functions/data-2.ttl
new file mode 100644
index 0000000..0018983
--- /dev/null
+++ b/tests/libtracker-data/functions/data-2.ttl
@@ -0,0 +1,12 @@
+ prefix : <http://example/> .
+ prefix xsd:        <http://www.w3.org/2001/XMLSchema#> .
+
+:x a :A .
+:x :title "Title X" .
+:x :filename "/home/user/title_x.ogg" .
+
+:y a :A .
+:y :filename "/tracker-project.org/UnitTesting.xml" .
+
+:z a :A .
+:z :filename "/home/user/title.of.a.film.theora" .
diff --git a/tests/libtracker-data/functions/functions-tracker-2.out b/tests/libtracker-data/functions/functions-tracker-2.out
new file mode 100644
index 0000000..9045c23
--- /dev/null
+++ b/tests/libtracker-data/functions/functions-tracker-2.out
@@ -0,0 +1,3 @@
+"Title X"
+"UnitTesting"
+"title of a film"
diff --git a/tests/libtracker-data/functions/functions-tracker-2.rq b/tests/libtracker-data/functions/functions-tracker-2.rq
new file mode 100644
index 0000000..6e7dbb0
--- /dev/null
+++ b/tests/libtracker-data/functions/functions-tracker-2.rq
@@ -0,0 +1,9 @@
+PREFIX ex: <http://example/>
+PREFIX ns: <http://www.w3.org/2005/xpath-functions#>
+
+SELECT tracker:coalesce(?title, tracker:string-from-filename(?filename), "unknown")
+{ ?_x a ex:A .
+  OPTIONAL { ?_x ex:title ?title }
+  OPTIONAL { ?_x ex:filename ?filename }
+}
+ORDER BY tracker:coalesce(?title, tracker:string-from-filename(?filename), "unknown")
diff --git a/tests/libtracker-data/tracker-sparql-test.c b/tests/libtracker-data/tracker-sparql-test.c
index 18d1f88..ac4cb36 100644
--- a/tests/libtracker-data/tracker-sparql-test.c
+++ b/tests/libtracker-data/tracker-sparql-test.c
@@ -65,6 +65,7 @@ const TestInfo tests[] = {
 	{ "expr-ops/query-unplus-1", "expr-ops/data", FALSE },
 	{ "functions/functions-property-1", "functions/data-1", FALSE },
 	{ "functions/functions-tracker-1", "functions/data-1", FALSE },
+	{ "functions/functions-tracker-2", "functions/data-2", FALSE },
 	{ "functions/functions-xpath-1", "functions/data-1", FALSE },
 	{ "functions/functions-xpath-2", "functions/data-1", FALSE },
 	{ "optional/q-opt-complex-1", "optional/complex-data-1", FALSE },



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]