X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=src%2Ftest_sparql.c;h=963667fd89ff27907688d77225a73d599e3093bd;hb=5f08ed2e4b4a5288200a62e49011b2f673746064;hp=4bd27a016bc355cf910db34508f4ca886cad8495;hpb=4e474731e73a65cbf168c9bb2fb39aef1c92d445;p=mp-sparql-moved-to-github.git diff --git a/src/test_sparql.c b/src/test_sparql.c index 4bd27a0..963667f 100644 --- a/src/test_sparql.c +++ b/src/test_sparql.c @@ -151,6 +151,7 @@ static void tst1(void) yaz_sparql_add_pattern(s, "index.bf.isbn", "?inst bf:ISBN %s"); yaz_sparql_add_pattern(s, "uri.full", "SELECT ?sub ?rel WHERE ?work = %u"); + yaz_sparql_add_pattern(s, "present.brief", "SELECT %u"); YAZ_CHECK(test_uri(s, "http://x/y", "full", "PREFIX rdf: \n" @@ -158,6 +159,13 @@ static void tst1(void) "PREFIX gs: \n" "SELECT ?sub ?rel WHERE ?work = \n")); + + YAZ_CHECK(test_uri(s, "http://x/z", "brief", + "PREFIX rdf: \n" + "PREFIX bf: \n" + "PREFIX gs: \n" + "SELECT \n")); + YAZ_CHECK(test_query( s, "@attr 1=bf.title computer", "PREFIX rdf: \n" @@ -364,6 +372,7 @@ static void tst1(void) static void tst2(void) { yaz_sparql_t s = yaz_sparql_create(); + yaz_sparql_t s2 = yaz_sparql_create(); yaz_sparql_add_pattern(s, "prefix", "rdf: http://www.w3.org/1999/02/22-rdf-syntax-ns"); @@ -437,10 +446,14 @@ static void tst2(void) " OPTIONAL { ?inst bf:heldBy ?lib } .\n" " ?work bf:creator/bf:label ?v0 " "FILTER(contains(?v0, \"london\"))\n" + + "}\n")); + yaz_sparql_include(s2, s); + YAZ_CHECK(test_query( - s, "@or @and @attr 1=bf.creator a @attr 1=bf.title b @attr 1=bf.title c", + s2, "@or @and @attr 1=bf.creator a @attr 1=bf.title b @attr 1=bf.title c", "PREFIX rdf: \n" "PREFIX bf: \n" "PREFIX gs: \n" @@ -465,6 +478,7 @@ static void tst2(void) "}\n" )); + yaz_sparql_destroy(s2); yaz_sparql_destroy(s); }