Sha256: aa688f61769cf452a55600b112aa3da0db2c11faa667a837b27a731862b30286

Contents?: true

Size: 1.52 KB

Versions: 51

Compression:

Stored size: 1.52 KB

Contents

require 'spec_helper'

module Marty
groupings = <<EOF
name
g1
g2
g3
EOF

heads = <<EOF
name	condition_text
h1	foo
h2	bar
h3	baz
EOF

head_versions = <<EOF
head__name	version	result_text
h1	base	x=1
h1	600	x=2
h2	base	y=z
h3	base	z=4
EOF

grouping_head_versions = <<EOF
grouping__name	head_version__head	head_version__version
g1	h1	base
g1	h1	600
g2	h2	base
g3	h3	base
EOF

describe DataExporter do
  it 'be able to import and export nested keys' do
    res = Marty::DataImporter.do_import_summary(Gemini::Grouping, groupings)
    expect(res).to eq(create: 3)
    Gemini::Grouping.count.should == 3

    res = Marty::DataImporter.do_import_summary(Gemini::Head, heads)
    expect(res).to eq(create: 3)
    Gemini::Head.count.should == 3

    res = Marty::DataImporter.do_import_summary(Gemini::HeadVersion, head_versions)
    expect(res).to eq(create: 4)
    Gemini::HeadVersion.count.should == 4

    res = Marty::DataImporter.do_import_summary(Gemini::GroupingHeadVersion, grouping_head_versions)
    expect(res).to eq(create: 4)
    Gemini::GroupingHeadVersion.count.should == 4

    res = Marty::DataExporter.do_export('infinity', Gemini::GroupingHeadVersion)

    expect(res).to eq [
      ['grouping', 'head_version__head', 'head_version__version'],
      ['g1', 'h1', 'base'],
      ['g1', 'h1', '600'],
      ['g2', 'h2', 'base'],
      ['g3', 'h3', 'base']
    ]

    csv = Marty::DataExporter.to_csv(res, col_sep: "\t")

    res = Marty::DataImporter.do_import_summary(Gemini::GroupingHeadVersion, csv)

    expect(res).to eq(same: 4)
  end
end
end

Version data entries

51 entries across 51 versions & 1 rubygems

Version Path
marty-14.3.0 spec/lib/data_exporter_spec.rb
marty-14.0.0 spec/lib/data_exporter_spec.rb
marty-13.0.2 spec/lib/data_exporter_spec.rb
marty-11.0.0 spec/lib/data_exporter_spec.rb
marty-10.0.3 spec/lib/data_exporter_spec.rb
marty-10.0.2 spec/lib/data_exporter_spec.rb
marty-10.0.0 spec/lib/data_exporter_spec.rb
marty-9.5.1 spec/lib/data_exporter_spec.rb
marty-9.5.0 spec/lib/data_exporter_spec.rb
marty-9.3.3 spec/lib/data_exporter_spec.rb
marty-9.3.2 spec/lib/data_exporter_spec.rb
marty-9.3.0 spec/lib/data_exporter_spec.rb
marty-8.5.0 spec/lib/data_exporter_spec.rb
marty-8.4.1 spec/lib/data_exporter_spec.rb
marty-8.3.1 spec/lib/data_exporter_spec.rb
marty-8.2.0 spec/lib/data_exporter_spec.rb
marty-8.0.0 spec/lib/data_exporter_spec.rb
marty-6.1.0 spec/lib/data_exporter_spec.rb
marty-5.2.0 spec/lib/data_exporter_spec.rb
marty-5.1.4 spec/lib/data_exporter_spec.rb