Sha256: 2cc1efde6f48c892dab6dcabd035da0feed581c659b63d79f3d6b09fb66515ef
Contents?: true
Size: 1.08 KB
Versions: 3
Compression:
Stored size: 1.08 KB
Contents
require_relative 'spec_helper' module Basic101 describe Program do let(:statement1) {Statement.new} let(:statement2) {Statement.new} let(:statement3) {Statement.new} let(:statements) {[statement1, statement2, statement3]} let(:line1) {Line.new(10, [statement1])} let(:line2) {Line.new(20, [statement2, statement3])} let(:lines) {[line1, line2]} subject(:program) {described_class.new(lines)} describe '#lines' do specify do expect(program.statements).to eq statements end end describe '#[]' do specify do expect(program[0]).to eq statement1 expect(program[1]).to eq statement2 expect(program[2]).to eq statement3 expect(program[3]).to be_nil end end describe '#index_of_line' do specify do expect(program.index_of_line(10)).to eq 0 expect(program.index_of_line(20)).to eq 1 expect { program.index_of_line(30) }.to raise_error(UndefinedLineNumberError, "Undefined line number 30") end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
basic101-0.4.0 | test/spec/program_spec.rb |
basic101-0.2.0 | test/spec/program_spec.rb |
basic101-0.1.0 | test/spec/program_spec.rb |