spec/data_cube_spec.rb in bio-publisci-0.0.6 vs spec/data_cube_spec.rb in bio-publisci-0.0.7

- old
+ new

@@ -5,54 +5,54 @@ # require_relative '../lib/r2rdf/generators/csv.rb' require_relative '../lib/bio-publisci.rb' -describe R2RDF::Dataset::DataCube do +describe PubliSci::Dataset::DataCube do context "with Plain Old Ruby objects" do #define a temporary class to use module methods before(:all) do class Gen - include R2RDF::Dataset::DataCube + include PubliSci::Dataset::DataCube end @generator = Gen.new @measures = ['chunkiness','deliciousness'] @dimensions = ['producer', 'pricerange'] @codes = @dimensions #all dimensions coded for the tests @labels = %w(hormel newskies whys) - @data = + @data = { "producer" => ["hormel","newskies", "whys"], "pricerange" => ["low", "medium", "nonexistant"], "chunkiness"=> [1, 6, 9001], - "deliciousness"=> [1, 9, 6] + "deliciousness"=> [1, 9, 6] } end it "should have correct output according to the reference file" do - + turtle_string = @generator.generate(@measures, @dimensions, @codes, @data, @labels, 'bacon') ref = IO.read(File.dirname(__FILE__) + '/turtle/bacon') - turtle_string.should == ref + turtle_string.should == ref end context "with missing values" do before(:all) do @missing_data = Marshal.load(Marshal.dump(@data)) missingobs = { "producer" => "missingbacon", "pricerange" => "unknown", "chunkiness"=> nil, - "deliciousness"=> nil, + "deliciousness"=> nil, } missingobs.map{|k,v| @missing_data[k] << v} end - it "skips observations with missing values by default" do + it "skips observations with missing values by default" do turtle_string = @generator.generate(@measures, @dimensions, @codes, @missing_data, @labels + ["missingbacon"], 'bacon') turtle_string[/.*obsmissingbacon.*\n/].should be nil end it "includes observations with missing values if flag is set" do @@ -76,11 +76,11 @@ dsd = @generator.dataset("bacon") dsd.is_a?(String).should == true end it 'generates component specifications' do - components = @generator.component_specifications(@measures , @dimensions, "bacon") + components = @generator.component_specifications(@measures , @dimensions, @codes, "bacon") components.is_a?(Array).should == true components.first.is_a?(String).should == true end it 'generates dimension properties' do @@ -95,20 +95,20 @@ measures.first.is_a?(String).should == true end it 'generates observations' do #measures, dimensions, codes, var, observation_labels, data, options={} - + observations = @generator.observations(@measures, @dimensions, @codes, @data, @labels, "bacon") observations.is_a?(Array).should == true observations.first.is_a?(String).should == true end end - + context "under official integrity constraints" do before(:all) do - @graph = RDF::Graph.load(File.dirname(__FILE__) + '/turtle/reference', :format => :ttl) + @graph = RDF::Graph.load(File.dirname(__FILE__) + '/turtle/reference', :format => :ttl) @checks = {} Dir.foreach(File.dirname(__FILE__) + '/queries/integrity') do |file| if file.split('.').last == 'rq' @checks[file.split('.').first] = IO.read(File.dirname(__FILE__) + '/queries/integrity/' + file) end @@ -154,10 +154,10 @@ ## second query for IC-19 uses property paths that aren't as easy to ## convert to sparql 1.0, so for now I've left it out # SPARQL.execute(@checks['19_2'], @graph).first.should be_nil end end - + it "can set dimensions vs measures via hash" do end \ No newline at end of file