server/src/tests/Libraries/Sparql/SparqlQueryAnalyserTest.php
changeset 387 7fba86fa8604
parent 386 c731ab9b934d
--- a/server/src/tests/Libraries/Sparql/SparqlQueryAnalyserTest.php	Mon Oct 31 14:24:23 2016 +0100
+++ b/server/src/tests/Libraries/Sparql/SparqlQueryAnalyserTest.php	Thu Nov 03 01:52:26 2016 +0100
@@ -10,6 +10,7 @@
         "GRAPH" => "graph.sparql",
         "LIMIT_OFFSET" => "limit_offset.sparql",
         "PREFIXES" => "prefixes.sparql",
+        "PREFIXES_LIMIT" => "prefixes_limit.sparql",
         "SELECT" => "select.sparql",
         "UNKNOWN" => "unknown.sparql",
     ];
@@ -78,4 +79,22 @@
         ], $analyser->getRawPrefixes());
     }
 
+    public function testRawQuery() {
+        $analyser = new SparqlQueryAnalyser($this->getTestQuery("PREFIXES_LIMIT"));
+
+        $this->assertEquals(20, $analyser->getOffset());
+        $this->assertEquals(10, $analyser->getLimit());
+        $this->assertEquals("select  ?Nom ?resource ?url (count( distinct (?o) as ?nb))
+ where {
+   ?resource rdfs:label ?Nom.
+   ?resource foaf:isPrimaryTopicOf ?url.
+   ?resource rdf:type ?p.
+   ?resource dbpedia-owl:wikiPageExternalLink  ?o
+FILTER ( langMatches( lang(?Nom), \"EN\" )).
+?Nom <bif:contains> \"Apple\".
+MINUS { ?resource dbo:wikiPageRedirects|dbo:wikiPageDisambiguates ?dis   }
 }
+Group By ?Nom ?resource ?url", $analyser->getRawQuery());
+    }
+
+}