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