diff -r c731ab9b934d -r 7fba86fa8604 server/src/tests/Libraries/Sparql/SparqlQueryAnalyserTest.php --- 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 \"Apple\". +MINUS { ?resource dbo:wikiPageRedirects|dbo:wikiPageDisambiguates ?dis } } +Group By ?Nom ?resource ?url", $analyser->getRawQuery()); + } + +}