Sha256: 9918ff0f76225874a7b890fded88ca64efbc1e4d4574b2fdf1557770ff59a894

Contents?: true

Size: 822 Bytes

Versions: 2

Compression:

Stored size: 822 Bytes

Contents

require 'spec_helper'

require 'gorillib/model/serialization'

describe Gorillib::Model::LoadFromTsv, :model_spec => true, :builder_spec => true do

  context ".load_tsv" do

    let(:expected_engine) do
      {:name=>:Wankel, :carburetor=>:no, :volume=>1, :cylinders=>982, :owner=>"who_am_i"}
    end

    before :each do
      engine_class.class_eval { include Gorillib::Model::LoadFromTsv }
      engine_class.should_receive(:_each_raw_line).with(:test, {}).
        and_yield(expected_engine.values.join("\t"))
    end

    it "loads from file" do
      engine_class.load_tsv(:test).to_wire().first.keep_if{|k,| k != :_type}.should
        eql(expected_engine)
     end

     it "loads from file with block" do
       expect { |b| engine_class.load_tsv(:test, &b) }.to yield_with_args(engine_class)
     end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
gorillib-model-0.0.3 spec/model/serialization/tsv_spec.rb
gorillib-model-0.0.1 spec/model/serialization/tsv_spec.rb