server/src/tests/Libraries/Sparql/SparqlQueryAnalyserTest.php
changeset 387 7fba86fa8604
parent 386 c731ab9b934d
equal deleted inserted replaced
386:c731ab9b934d 387:7fba86fa8604
     8         "BASE" => "base.sparql",
     8         "BASE" => "base.sparql",
     9         "ASK" => "ask.sparql",
     9         "ASK" => "ask.sparql",
    10         "GRAPH" => "graph.sparql",
    10         "GRAPH" => "graph.sparql",
    11         "LIMIT_OFFSET" => "limit_offset.sparql",
    11         "LIMIT_OFFSET" => "limit_offset.sparql",
    12         "PREFIXES" => "prefixes.sparql",
    12         "PREFIXES" => "prefixes.sparql",
       
    13         "PREFIXES_LIMIT" => "prefixes_limit.sparql",
    13         "SELECT" => "select.sparql",
    14         "SELECT" => "select.sparql",
    14         "UNKNOWN" => "unknown.sparql",
    15         "UNKNOWN" => "unknown.sparql",
    15     ];
    16     ];
    16 
    17 
    17 
    18 
    76             "prefix foaf: <http://xmlns.com/foaf/0.1/>",
    77             "prefix foaf: <http://xmlns.com/foaf/0.1/>",
    77             "PREFIX dbpedia-owl: <http://dbpedia.org/ontology/>"
    78             "PREFIX dbpedia-owl: <http://dbpedia.org/ontology/>"
    78         ], $analyser->getRawPrefixes());
    79         ], $analyser->getRawPrefixes());
    79     }
    80     }
    80 
    81 
       
    82     public function testRawQuery() {
       
    83         $analyser = new SparqlQueryAnalyser($this->getTestQuery("PREFIXES_LIMIT"));
       
    84 
       
    85         $this->assertEquals(20, $analyser->getOffset());
       
    86         $this->assertEquals(10, $analyser->getLimit());
       
    87         $this->assertEquals("select  ?Nom ?resource ?url (count( distinct (?o) as ?nb))
       
    88  where {
       
    89    ?resource rdfs:label ?Nom.
       
    90    ?resource foaf:isPrimaryTopicOf ?url.
       
    91    ?resource rdf:type ?p.
       
    92    ?resource dbpedia-owl:wikiPageExternalLink  ?o
       
    93 FILTER ( langMatches( lang(?Nom), \"EN\" )).
       
    94 ?Nom <bif:contains> \"Apple\".
       
    95 MINUS { ?resource dbo:wikiPageRedirects|dbo:wikiPageDisambiguates ?dis   }
    81 }
    96 }
       
    97 Group By ?Nom ?resource ?url", $analyser->getRawQuery());
       
    98     }
       
    99 
       
   100 }