diff options
| author | 2019-01-14 01:41:26 -0500 | |
|---|---|---|
| committer | 2019-01-14 01:41:26 -0500 | |
| commit | 6aa7e04e06423e7d92ede727489ea346e88f7108 (patch) | |
| tree | 9bdec92fd17898b662235bc0a491de827990130c /spec/lib/roo/base_spec.rb | |
| parent | c59817e300dbe1aab3120cad603cdb14b14ed78b (diff) | |
| parent | dddfa903d2b856146f05ffb4415c31d6127bb5bf (diff) | |
Update upstream source from tag 'upstream/2.8.0'
Update to upstream version '2.8.0'
with Debian dir 569f5866fbcf4e449c6c48dc5d20a3ab54f95252
Diffstat (limited to 'spec/lib/roo/base_spec.rb')
| -rw-r--r-- | spec/lib/roo/base_spec.rb | 48 |
1 files changed, 45 insertions, 3 deletions
diff --git a/spec/lib/roo/base_spec.rb b/spec/lib/roo/base_spec.rb index d00025d..76cefcc 100644 --- a/spec/lib/roo/base_spec.rb +++ b/spec/lib/roo/base_spec.rb @@ -127,10 +127,22 @@ describe Roo::Base do end end - describe '#row' do - it 'should return the specified row' do + describe "#row" do + it "should return the specified row" do expect(spreadsheet.row(12)).to eq([41.0, 42.0, 43.0, 44.0, 45.0, nil, nil]) - expect(spreadsheet.row(16)).to eq([nil, '"Hello world!"', 'forty-three', 'forty-four', 'forty-five', nil, nil]) + expect(spreadsheet.row(16)).to eq([nil, '"Hello world!"', "forty-three", "forty-four", "forty-five", nil, nil]) + end + + it "should return the specified row if default_sheet is set by a string" do + spreadsheet.default_sheet = "my_sheet" + expect(spreadsheet.row(12)).to eq([41.0, 42.0, 43.0, 44.0, 45.0, nil, nil]) + expect(spreadsheet.row(16)).to eq([nil, '"Hello world!"', "forty-three", "forty-four", "forty-five", nil, nil]) + end + + it "should return the specified row if default_sheet is set by an integer" do + spreadsheet.default_sheet = 0 + expect(spreadsheet.row(12)).to eq([41.0, 42.0, 43.0, 44.0, 45.0, nil, nil]) + expect(spreadsheet.row(16)).to eq([nil, '"Hello world!"', "forty-three", "forty-four", "forty-five", nil, nil]) end end @@ -146,6 +158,11 @@ describe Roo::Base do expect { spreadsheet.row_with([/Missing Header/]) }.to \ raise_error(Roo::HeaderRowNotFoundError) end + + it 'returns missing headers' do + expect { spreadsheet.row_with([/Header/, /Missing Header 1/, /Missing Header 2/]) }.to \ + raise_error(Roo::HeaderRowNotFoundError, '[/Missing Header 1/, /Missing Header 2/]') + end end end @@ -173,6 +190,31 @@ describe Roo::Base do end end + describe "#default_sheet=" do + it "should correctly set the default sheet if passed a string" do + spreadsheet.default_sheet = "my_sheet" + expect(spreadsheet.default_sheet).to eq("my_sheet") + end + + it "should correctly set the default sheet if passed an integer" do + spreadsheet.default_sheet = 0 + expect(spreadsheet.default_sheet).to eq("my_sheet") + end + + it "should correctly set the default sheet if passed an integer for the second sheet" do + spreadsheet.default_sheet = 1 + expect(spreadsheet.default_sheet).to eq("blank sheet") + end + + it "should raise an error if passed a sheet that does not exist as an integer" do + expect { spreadsheet.default_sheet = 10 }.to raise_error RangeError + end + + it "should raise an error if passed a sheet that does not exist as a string" do + expect { spreadsheet.default_sheet = "does_not_exist" }.to raise_error RangeError + end + end + describe '#to_yaml' do it 'should convert the spreadsheet to yaml' do expect(spreadsheet.to_yaml({}, 5, 1, 5, 1)).to eq("--- \n" + yaml_entry(5, 1, 'date', '1961-11-21')) |
