Sha256: dd4f5cb5beb1e37376f2f99b75951bc39e595d62f174766d92f92a2309da1277

Contents?: true

Size: 1.49 KB

Versions: 9

Compression:

Stored size: 1.49 KB

Contents

# Author:: Eyal Oren
# Copyright:: (c) 2005-2006
# License:: LGPL

require 'test/unit'
require 'active_rdf'
require 'queryengine/query'
require 'queryengine/query2sparql'
require "#{File.dirname(__FILE__)}/../common"

class TestQueryEngine < Test::Unit::TestCase
  def setup
  end

  def teardown
  end

  def test_sparql_generation

    # TODO: write tests for distinct, ask

    query = Query.new
    query.select(:s)
    query.where(:s, RDFS::Resource.new('predicate'), 30)

    generated = Query2SPARQL.translate(query)
    expected = "SELECT ?s WHERE { ?s <predicate> \"30\"^^<http://www.w3.org/2001/XMLSchema#integer> . } "
    assert_equal expected, generated

    query = Query.new
    query.select(:s)
    query.where(:s, RDFS::Resource.new('foaf:age'), :a)
    query.where(:a, RDFS::Resource.new('rdf:type'), RDFS::Resource.new('xsd:int'))
    generated = Query2SPARQL.translate(query)
    expected = "SELECT ?s WHERE { ?s <foaf:age> ?a . ?a <rdf:type> <xsd:int> . } "
    assert_equal expected, generated

    #		query = Query.new
    #		query.select(:s).select(:a)
    #		query.where(:s, 'foaf:age', :a)
    #		generated = Query2SPARQL.translate(query)
    #		expected = "SELECT DISTINCT ?s ?a WHERE { ?s foaf:age ?a .}"
    #		assert_equal expected, generated
  end

  def test_query_omnipotent
    # can define multiple select clauses at once or separately
    q1 = Query.new.select(:s,:a)
    q2 = Query.new.select(:s).select(:a)
    assert_equal Query2SPARQL.translate(q1),Query2SPARQL.translate(q2)
  end
end

Version data entries

9 entries across 9 versions & 2 rubygems

Version Path
activerdf_net7-1.6.16 test/queryengine/test_query_engine.rb
activerdf_net7-1.6.15 test/queryengine/test_query_engine.rb
activerdf_net7-1.6.14 test/queryengine/test_query_engine.rb
activerdf_net7-1.6.13 test/queryengine/test_query_engine.rb
activerdf_net7-1.6.12 test/queryengine/test_query_engine.rb
activerdf_net7-1.6.11 test/queryengine/test_query_engine.rb
activerdf-1.6.10 test/queryengine/test_query_engine.rb
activerdf-1.6.11 test/queryengine/test_query_engine.rb
activerdf-1.6.9 test/queryengine/test_query_engine.rb