author | ymh <ymh.work@gmail.com> |
Mon, 31 Oct 2016 14:24:23 +0100 | |
changeset 386 | c731ab9b934d |
child 387 | 7fba86fa8604 |
permissions | -rw-r--r-- |
386
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
1 |
<?php |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
2 |
|
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
3 |
use CorpusParole\Libraries\Sparql\SparqlQueryAnalyser; |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
4 |
|
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
5 |
class SparqlQueryAnalyserTest extends TestCase |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
6 |
{ |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
7 |
const QUERIES = [ |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
8 |
"BASE" => "base.sparql", |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
9 |
"ASK" => "ask.sparql", |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
10 |
"GRAPH" => "graph.sparql", |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
11 |
"LIMIT_OFFSET" => "limit_offset.sparql", |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
12 |
"PREFIXES" => "prefixes.sparql", |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
13 |
"SELECT" => "select.sparql", |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
14 |
"UNKNOWN" => "unknown.sparql", |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
15 |
]; |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
16 |
|
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
17 |
|
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
18 |
public function getTestQuery($key) { |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
19 |
return file_get_contents(__DIR__.'/files/SparqlQueryAnalyserTest/'.self::QUERIES[$key]); |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
20 |
} |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
21 |
/** |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
22 |
* A basic test jsut test object creation. |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
23 |
* |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
24 |
* @return void |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
25 |
*/ |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
26 |
public function testCreation() { |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
27 |
$analyser = new SparqlQueryAnalyser($this->getTestQuery("BASE")); |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
28 |
$this->assertNotNull($analyser); |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
29 |
} |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
30 |
|
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
31 |
public function testQuerySelect() { |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
32 |
$analyser = new SparqlQueryAnalyser($this->getTestQuery("SELECT")); |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
33 |
$this->assertEquals(SparqlQueryAnalyser::SELECT_QUERY, $analyser->getQueryType()); |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
34 |
} |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
35 |
|
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
36 |
public function testQueryGraph() { |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
37 |
$analyser = new SparqlQueryAnalyser($this->getTestQuery("GRAPH")); |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
38 |
$this->assertEquals(SparqlQueryAnalyser::GRAPH_QUERY, $analyser->getQueryType()); |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
39 |
} |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
40 |
|
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
41 |
public function testQueryAsk() { |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
42 |
$analyser = new SparqlQueryAnalyser($this->getTestQuery("ASK")); |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
43 |
$this->assertEquals(SparqlQueryAnalyser::ASK_QUERY, $analyser->getQueryType()); |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
44 |
} |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
45 |
|
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
46 |
public function testQueryUnkown() { |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
47 |
$analyser = new SparqlQueryAnalyser($this->getTestQuery("UNKNOWN")); |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
48 |
$this->assertEquals(SparqlQueryAnalyser::UNKNOWN_QUERY, $analyser->getQueryType()); |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
49 |
} |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
50 |
|
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
51 |
public function testLimitOffset() { |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
52 |
$analyser = new SparqlQueryAnalyser($this->getTestQuery("LIMIT_OFFSET")); |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
53 |
$this->assertEquals(20, $analyser->getOffset()); |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
54 |
$this->assertEquals(10, $analyser->getLimit()); |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
55 |
} |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
56 |
|
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
57 |
public function testPrefixes() { |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
58 |
$analyser = new SparqlQueryAnalyser($this->getTestQuery("PREFIXES")); |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
59 |
$this->assertCount(5, $analyser->getPrefixes()); |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
60 |
$this->assertEquals([ |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
61 |
"" => "http://www.google.com/", |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
62 |
"rdf" => "http://www.w3.org/1999/02/22-rdf-syntax-ns#", |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
63 |
"rdfs" => "http://www.w3.org/2000/01/rdf-schema#", |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
64 |
"foaf" => "http://xmlns.com/foaf/0.1/", |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
65 |
"dbpedia-owl" => "http://dbpedia.org/ontology/" |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
66 |
], $analyser->getPrefixes()); |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
67 |
} |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
68 |
|
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
69 |
public function testRawPrefixes() { |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
70 |
$analyser = new SparqlQueryAnalyser($this->getTestQuery("PREFIXES")); |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
71 |
$this->assertCount(5, $analyser->getRawPrefixes()); |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
72 |
$this->assertEquals([ |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
73 |
"BASE <http://www.google.com/>", |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
74 |
"PREFIX rdf:<http://www.w3.org/1999/02/22-rdf-syntax-ns#>", |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
75 |
"PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>", |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
76 |
"prefix foaf: <http://xmlns.com/foaf/0.1/>", |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
77 |
"PREFIX dbpedia-owl: <http://dbpedia.org/ontology/>" |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
78 |
], $analyser->getRawPrefixes()); |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
79 |
} |
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
80 |
|
c731ab9b934d
implement first version of sparql client interface
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
81 |
} |