test/test_reliability_skillscale.rb in statsample-1.4.1 vs test/test_reliability_skillscale.rb in statsample-1.4.2

- old
+ new

@@ -1,57 +1,55 @@ -require(File.expand_path(File.dirname(__FILE__)+'/helpers_tests.rb')) +require(File.expand_path(File.dirname(__FILE__) + '/helpers_tests.rb')) - -class StatsampleReliabilitySkillScaleTestCase < MiniTest::Unit::TestCase +class StatsampleReliabilitySkillScaleTestCase < Minitest::Test context Statsample::Reliability::SkillScaleAnalysis do setup do - options=%w{a b c d e} - cases=20 - @id=cases.times.map {|v| v}.to_scale - @a=cases.times.map {options[rand(5)]}.to_vector - @b=cases.times.map {options[rand(5)]}.to_vector - @c=cases.times.map {options[rand(5)]}.to_vector - @d=cases.times.map {options[rand(5)]}.to_vector - @e=cases.times.map {|i| - i==0 ? options[rand(0)] : - rand()>0.8 ? nil : options[rand(5)] + options = %w(a b c d e) + cases = 20 + @id = cases.times.map { |v| v }.to_scale + @a = cases.times.map { options[rand(5)] }.to_vector + @b = cases.times.map { options[rand(5)] }.to_vector + @c = cases.times.map { options[rand(5)] }.to_vector + @d = cases.times.map { options[rand(5)] }.to_vector + @e = cases.times.map {|i| + i == 0 ? options[rand(0)] : + rand > 0.8 ? nil : options[rand(5)] }.to_vector - @ds={'id'=>@id,'a'=>@a,'b'=>@b,'c'=>@c,'d'=>@d,'e'=>@e}.to_dataset - @key={'a'=>"a", 'b'=>options[rand(5)], 'c'=>options[rand(5)], 'd'=>options[rand(5)],'e'=>options[rand(5)]} - @ssa=Statsample::Reliability::SkillScaleAnalysis.new(@ds, @key) - @ac=@a.map {|v| v==@key['a'] ? 1 : 0}.to_scale - @bc=@b.map {|v| v==@key['b'] ? 1 : 0}.to_scale - @cc=@c.map {|v| v==@key['c'] ? 1 : 0}.to_scale - @dc=@d.map {|v| v==@key['d'] ? 1 : 0}.to_scale - @ec=@e.map {|v| v.nil? ? nil : (v==@key['e'] ? 1 : 0)}.to_scale - + @ds = { 'id' => @id, 'a' => @a, 'b' => @b, 'c' => @c, 'd' => @d, 'e' => @e }.to_dataset + @key = { 'a' => 'a', 'b' => options[rand(5)], 'c' => options[rand(5)], 'd' => options[rand(5)], 'e' => options[rand(5)] } + @ssa = Statsample::Reliability::SkillScaleAnalysis.new(@ds, @key) + @ac = @a.map { |v| v == @key['a'] ? 1 : 0 }.to_scale + @bc = @b.map { |v| v == @key['b'] ? 1 : 0 }.to_scale + @cc = @c.map { |v| v == @key['c'] ? 1 : 0 }.to_scale + @dc = @d.map { |v| v == @key['d'] ? 1 : 0 }.to_scale + @ec = @e.map { |v| v.nil? ? nil : (v == @key['e'] ? 1 : 0) }.to_scale end - should "return proper corrected dataset" do - cds={'id'=>@id, 'a'=>@ac,'b'=>@bc,'c'=>@cc,'d'=>@dc, 'e'=>@ec}.to_dataset + should 'return proper corrected dataset' do + cds = { 'id' => @id, 'a' => @ac, 'b' => @bc, 'c' => @cc, 'd' => @dc, 'e' => @ec }.to_dataset assert_equal(cds, @ssa.corrected_dataset) end - should "return proper corrected minimal dataset" do - cdsm={'a'=>@ac,'b'=>@bc,'c'=>@cc,'d'=>@dc, 'e'=>@ec}.to_dataset + should 'return proper corrected minimal dataset' do + cdsm = { 'a' => @ac, 'b' => @bc, 'c' => @cc, 'd' => @dc, 'e' => @ec }.to_dataset assert_equal(cdsm, @ssa.corrected_dataset_minimal) end - should "return correct vector_sum and vector_sum" do - cdsm=@ssa.corrected_dataset_minimal + should 'return correct vector_sum and vector_sum' do + cdsm = @ssa.corrected_dataset_minimal assert_equal(cdsm.vector_sum, @ssa.vector_sum) assert_equal(cdsm.vector_mean, @ssa.vector_mean) end - should "not crash on rare case" do - a=Statsample::Vector["c","c","a","a","c","a","b","c","c","b","a","d","a","d","a","a","d","e","c","d"] - b=Statsample::Vector["e","b","e","b","c","d","a","e","e","c","b","e","e","b","d","c","e","b","b","d"] - c=Statsample::Vector["e","b","e","c","e","c","b","d","e","c","a","a","b","d","e","c","b","a","a","e"] - d=Statsample::Vector["a","b","d","d","e","b","e","b","d","c","e","a","c","d","c","c","e","d","d","b"] - e=Statsample::Vector["a","b",nil,"d","c","c","d",nil,"d","d","e","e",nil,nil,nil,"d","c",nil,"e","d"] - key={"a"=>"a", "b"=>"e", "c"=>"d", "d"=>"c", "e"=>"d"} - ds=Statsample::Dataset.new("a"=>a,"b"=>b,"c"=>c,"d"=>d,"e"=>e) - ssa=Statsample::Reliability::SkillScaleAnalysis.new(ds, key) + should 'not crash on rare case' do + a = Statsample::Vector['c', 'c', 'a', 'a', 'c', 'a', 'b', 'c', 'c', 'b', 'a', 'd', 'a', 'd', 'a', 'a', 'd', 'e', 'c', 'd'] + b = Statsample::Vector['e', 'b', 'e', 'b', 'c', 'd', 'a', 'e', 'e', 'c', 'b', 'e', 'e', 'b', 'd', 'c', 'e', 'b', 'b', 'd'] + c = Statsample::Vector['e', 'b', 'e', 'c', 'e', 'c', 'b', 'd', 'e', 'c', 'a', 'a', 'b', 'd', 'e', 'c', 'b', 'a', 'a', 'e'] + d = Statsample::Vector['a', 'b', 'd', 'd', 'e', 'b', 'e', 'b', 'd', 'c', 'e', 'a', 'c', 'd', 'c', 'c', 'e', 'd', 'd', 'b'] + e = Statsample::Vector['a', 'b', nil, 'd', 'c', 'c', 'd', nil, 'd', 'd', 'e', 'e', nil, nil, nil, 'd', 'c', nil, 'e', 'd'] + key = { 'a' => 'a', 'b' => 'e', 'c' => 'd', 'd' => 'c', 'e' => 'd' } + ds = Statsample::Dataset.new('a' => a, 'b' => b, 'c' => c, 'd' => d, 'e' => e) + ssa = Statsample::Reliability::SkillScaleAnalysis.new(ds, key) assert(ssa.summary) end - - should "return valid summary" do - assert(@ssa.summary.size>0) + + should 'return valid summary' do + assert(@ssa.summary.size > 0) end end end