Smalyshev has uploaded a new change for review.
https://gerrit.wikimedia.org/r/283360
Change subject: Add test queries
......................................................................
Add test queries
Must be run manually for now.
Bug: T130318
Change-Id: I5f1b15bbbba78b012afc57fdda3ce958239c1ccd
---
A queries/1592.result
A queries/1592.sparql
A queries/1785.sparql
A queries/badservice.result
A queries/badservice.sparql
A queries/cats.sparql
A queries/dates.sparql
A queries/minus.sparql
A queries/noimg.sparql
A queries/orderby.sparql
A queries/paris.sparql
A queries/test.sh
A queries/tree.sparql
13 files changed, 161 insertions(+), 0 deletions(-)
git pull ssh://gerrit.wikimedia.org:29418/wikidata/query/rdf
refs/changes/60/283360/1
diff --git a/queries/1592.result b/queries/1592.result
new file mode 100644
index 0000000..8a6ef12
--- /dev/null
+++ b/queries/1592.result
@@ -0,0 +1 @@
+"bindings" : [ { } ]
diff --git a/queries/1592.sparql b/queries/1592.sparql
new file mode 100644
index 0000000..43ae2b4
--- /dev/null
+++ b/queries/1592.sparql
@@ -0,0 +1,6 @@
+# https://jira.blazegraph.com/browse/BLZG-1592
+SELECT ?id WHERE {
+ ?p wdt:P31 wd:Q5 .
+ ?p wdt:P21 wd:Q6581072 .
+ BIND(substr(str(?p), 33)+0 as ?id)
+} LIMIT 1
diff --git a/queries/1785.sparql b/queries/1785.sparql
new file mode 100644
index 0000000..7d6f7d9
--- /dev/null
+++ b/queries/1785.sparql
@@ -0,0 +1,7 @@
+# https://jira.blazegraph.com/browse/BLZG-1785
+SELECT ?country
+WHERE
+{
+ wd:Q513 wdt:P17 ?country .
+ FILTER(?country NOT IN (wd:Q148,wd:Q30) || !bound(?country))
+}
diff --git a/queries/badservice.result b/queries/badservice.result
new file mode 100644
index 0000000..3e235a3
--- /dev/null
+++ b/queries/badservice.result
@@ -0,0 +1 @@
+Service call not allowed: http://wikiba.se/ontology#blah
diff --git a/queries/badservice.sparql b/queries/badservice.sparql
new file mode 100644
index 0000000..6342363
--- /dev/null
+++ b/queries/badservice.sparql
@@ -0,0 +1,10 @@
+# https://jira.blazegraph.com/browse/BLZG-1571
+SELECT ?wiki (count(?l) as ?lcount) WHERE {
+ ?wiki wdt:P31 wd:Q10876391 .
+ ?wiki rdfs:label ?l .
+ SERVICE wikibase:blah {
+ bd:serviceParam wikibase:language "en" .
+ ?wiki rdfs:label ?wikiLabel .
+ }
+} GROUP BY ?wiki
+ORDER BY DESC(?lcount)
diff --git a/queries/cats.sparql b/queries/cats.sparql
new file mode 100644
index 0000000..e43968d
--- /dev/null
+++ b/queries/cats.sparql
@@ -0,0 +1,7 @@
+#Cats
+SELECT ?item ?itemLabel
+WHERE
+{
+ ?item wdt:P31 wd:Q146 .
+ SERVICE wikibase:label { bd:serviceParam wikibase:language "en" }
+}
diff --git a/queries/dates.sparql b/queries/dates.sparql
new file mode 100644
index 0000000..c49315c
--- /dev/null
+++ b/queries/dates.sparql
@@ -0,0 +1,10 @@
+# https://jira.blazegraph.com/browse/BLZG-1747
+SELECT ?entity (year(?date) as ?year)
+WHERE
+{
+?entity wdt:P569 ?date .
+FILTER (datatype(?date) = xsd:dateTime)
+FILTER (month(?date) = month(now()))
+FILTER (day(?date) = day(now()))
+}
+LIMIT 10
diff --git a/queries/minus.sparql b/queries/minus.sparql
new file mode 100644
index 0000000..7da7138
--- /dev/null
+++ b/queries/minus.sparql
@@ -0,0 +1,5 @@
+# https://jira.blazegraph.com/browse/BLZG-1670
+SELECT (COUNT(DISTINCT(?item)) AS ?count) WHERE {
+ ?item wdt:P31/wdt:P279 wd:Q56061.
+ MINUS {?item wdt:P373 ?commonscat} .
+}
diff --git a/queries/noimg.sparql b/queries/noimg.sparql
new file mode 100644
index 0000000..744628c
--- /dev/null
+++ b/queries/noimg.sparql
@@ -0,0 +1,7 @@
+# https://jira.blazegraph.com/browse/BLZG-1320
+prefix entity: <http://www.wikidata.org/entity/>
+
+SELECT ?item WHERE {
+ ?item wdt:P31 entity:Q5 .
+ FILTER NOT EXISTS { ?item wdt:P18 ?dummy0 }
+} limit 5
diff --git a/queries/orderby.sparql b/queries/orderby.sparql
new file mode 100644
index 0000000..f2ebd31
--- /dev/null
+++ b/queries/orderby.sparql
@@ -0,0 +1,4 @@
+# https://jira.blazegraph.com/browse/BLZG-1591
+SELECT ?work ?author WHERE {
+ ?work wdt:P50 ?author .
+} ORDER BY ?work ?author LIMIT 10
diff --git a/queries/paris.sparql b/queries/paris.sparql
new file mode 100644
index 0000000..204cc93
--- /dev/null
+++ b/queries/paris.sparql
@@ -0,0 +1,24 @@
+# https://jira.blazegraph.com/browse/BLZG-1542
+# Query to return latitudes and longitudes
+# for places in Paris
+
+ SELECT ?a ?aLabel ?lat ?long WHERE {
+ ?a wdt:P131+ wd:Q90 . # administrative territorial entity = Paris
+
+ ?a p:P625 ?statement . # coordinate-location statement
+ ?statement psv:P625 ?coordinate_node .
+ ?coordinate_node wikibase:geoLatitude ?lat .
+ ?coordinate_node wikibase:geoLongitude ?long .
+
+ MINUS { # ignore items with more than one pair of
coordinates
+ SELECT ?a (COUNT(?a) AS ?count_stmt) WHERE {
+ ?a wdt:P131+ wd:Q90 .
+ ?a p:P625 ?statement
+ } GROUP BY ?a HAVING (?count_stmt > 1)
+ }
+
+ SERVICE wikibase:label {
+ bd:serviceParam wikibase:language "en" .
+ } .
+
+ } ORDER BY ASC(?lat) LIMIT 100
diff --git a/queries/test.sh b/queries/test.sh
new file mode 100755
index 0000000..4357479
--- /dev/null
+++ b/queries/test.sh
@@ -0,0 +1,71 @@
+#!/bin/bash
+DIR=`dirname $0`
+ENDPOINT=https://query.wikidata.org/
+ESC_SEQ="\x1b["
+COL_RESET=$ESC_SEQ"39m"
+COL_RED=$ESC_SEQ"31m"
+COL_GREEN=$ESC_SEQ"32m"
+KEEP=no
+
+function gethelp {
+ echo "Usage: $0 [-s ENDPOINT] [-k] [scripts...]"
+ exit 0
+}
+
+while getopts s:kh option
+do
+ case "${option}"
+ in
+ h) gethelp;;
+ s) ENDPOINT=${OPTARG};;
+ k) KEEP=yes;;
+ esac
+done
+
+# allow extra args
+shift $((OPTIND-1))
+
+function runtest {
+ fname=$(basename -s .sparql $1)
+ out=/tmp/querytest.$fname.$$
+ curl -G --data-urlencode query@$1 --data format=json --data random=$$
$ENDPOINT/sparql -s > $out
+ if [ -z $out ]; then
+ failed
+ else
+ if [ -f $fname.result ]; then
+ lookup=`cat $fname.result`
+ else
+ lookup='"results" : {'
+ fi
+ if grep -q -l -F "$lookup" $out; then
+ passed
+ else
+ failed
+ fi
+ fi
+ if [ $KEEP == "no" ]; then
+ rm $out
+ fi
+}
+
+function passed {
+ echo -e "$COL_GREEN PASSED$COL_RESET"
+}
+
+function failed {
+ echo -e "$COL_RED FAILED$COL_RESET"
+}
+
+cd $DIR
+
+if [ "x$1" != "x" ]; then
+ scripts="$1"
+else
+ scripts=`ls *.sparql`
+fi
+
+for tstname in $scripts; do
+ echo -n Running $tstname
+ runtest $tstname
+done
+
diff --git a/queries/tree.sparql b/queries/tree.sparql
new file mode 100644
index 0000000..ca5ec7b
--- /dev/null
+++ b/queries/tree.sparql
@@ -0,0 +1,8 @@
+# https://phabricator.wikimedia.org/T127014
+prefix wdt: <http://www.wikidata.org/prop/direct/>
+prefix wd: <http://www.wikidata.org/entity/>
+SELECT ?item WHERE {
+ ?item wdt:P22 ?sub0 .
+ ?tree0 (wdt:P40)* ?sub0 .
+ BIND (wd:Q7210 AS ?tree0)
+} LIMIT 1000
--
To view, visit https://gerrit.wikimedia.org/r/283360
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I5f1b15bbbba78b012afc57fdda3ce958239c1ccd
Gerrit-PatchSet: 1
Gerrit-Project: wikidata/query/rdf
Gerrit-Branch: master
Gerrit-Owner: Smalyshev <[email protected]>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits