#!/usr/bin/env ruby # # Experimenting with query tests # todo: /2000/10/rdf-tests/rdfq # danbri@w3.org # # ./tc_squish.rb > _parser_tests.rb # # We want to know, for each query: # number of clauses, number of variables, whether it is wellformed # (whether it uses various supported or unsupported featurs?) # So we should be reading a test manifest format...? # (compiled from rdf into nt by a reliable rdf parser?) `rdfdump -o ntriples -q file:rdfq_test_manifest.rdf > rdfq_test_manifest.nt` require 'test/unit' require './squish' require '../basicrdf' class TC_Squish < Test::Unit::TestCase def set_up @data = Loader.ntfile2graph 'rdfq_test_manifest.nt' @rdf = @data.reg_xmlns 'http://www.w3.org/1999/02/22-rdf-syntax-ns#', 'rdf' @test = @data.reg_xmlns 'http://www.w3.org/2002/06/rdfq_test#', 'test' end def test_parse testlist = @data.ask(Statement.new(nil,@rdf+'type',@test+'Query')).subjects testlist.each do |query| @query = SquishQuery.new q = query.test_name.to_s num_clauses_expected = query.test_clauses.to_s num_vars_expected = query.test_variables.to_s wf_expected = query.test_wf.to_s format = query.test_format.to_s tn = q.gsub(/\//, "_") tn.gsub!(/-/, "_") fn = "#{q}.#{format}" tg =<