Sha256: 8300ad8f3ec12801cd924595fd294a87aac39d536175ee53f622ec879edd6f3f

Contents?: true

Size: 1.4 KB

Versions: 13

Compression:

Stored size: 1.4 KB

Contents

require(File.dirname(__FILE__)+'/helpers_tests.rb')

class StatsampleCSVTestCase < MiniTest::Unit::TestCase
  def setup
    @ds=Statsample::CSV.read(File.dirname(__FILE__)+"/test_csv.csv")
  end
  def test_read
    assert_equal(6,@ds.cases)
    assert_equal(%w{id name age city a1}, @ds.fields)
    id=[1,2,3,4,5,6].to_vector(:scale)
    name=["Alex","Claude","Peter","Franz","George","Fernand"].to_vector(:nominal)
    age=[20,23,25,27,5.5,nil].to_vector(:scale)
    city=["New York","London","London","Paris","Tome",nil].to_vector(:nominal)
    a1=["a,b","b,c","a",nil,"a,b,c",nil].to_vector(:nominal)
    ds_exp=Statsample::Dataset.new({'id'=>id,'name'=>name,'age'=>age,'city'=>city,'a1'=>a1}, %w{id name age city a1})
    ds_exp.fields.each{|f|
      assert_equal(ds_exp[f],@ds[f])
    }
    assert_equal(ds_exp,@ds)
  end
  def test_nil
    assert_equal(nil,@ds['age'][5])
  end
  def test_repeated
    ds=Statsample::CSV.read(File.dirname(__FILE__)+"/../data/repeated_fields.csv")
    assert_equal(%w{id name_1 age_1 city a1 name_2 age_2},ds.fields)
    age=[3,4,5,6,nil,8].to_vector(:scale)
    assert_equal(age,ds['age_2'])
  end
  def test_write
    filename=Tempfile.new("afile")
    #  filename=Dir::tmpdir+"/test_write.csv"
    Statsample::CSV.write(@ds, filename.path)
    ds2=Statsample::CSV.read(filename.path)
    i=0
    ds2.each_array{|row|
      assert_equal(@ds.case_as_array(i),row)
      i+=1
    }
  end
end

Version data entries

13 entries across 13 versions & 1 rubygems

Version Path
statsample-0.18.0 test/test_csv.rb
statsample-0.17.0 test/test_csv.rb
statsample-0.16.0 test/test_csv.rb
statsample-0.15.1 test/test_csv.rb
statsample-0.15.0 test/test_csv.rb
statsample-0.14.1 test/test_csv.rb
statsample-0.14.0 test/test_csv.rb
statsample-0.13.1 test/test_csv.rb
statsample-0.13.0 test/test_csv.rb
statsample-0.12.0 test/test_csv.rb
statsample-0.11.2 test/test_csv.rb
statsample-0.11.1 test/test_csv.rb
statsample-0.11.0 test/test_csv.rb