Sha256: 79201ff8e859ededfb1777ba7676b20b3a209e3d50c55f34ae0c7df42e97f592

Contents?: true

Size: 724 Bytes

Versions: 6

Compression:

Stored size: 724 Bytes

Contents

require File.join(File.dirname(__FILE__), '..', 'test_helper')

describe "An expression for braces surrounding zero or more letters followed by semicolons", :extend => CompilerTestCase do
  testing_expression "'{' ([a-z] ';')* '}'"
  
  it "parses matching input successfully" do
    parse('{a;b;c;}').should be_success
  end
  
  it "fails to parse input with an expression that is missing a semicolon, reporting the correct nested failure" do
    parse('{a;b;c}') do |result|
      result.should be_failure
      
      result.nested_failures.size.should == 1      
      nested_failure = result.nested_failures[0]
      nested_failure.index.should == 6
      nested_failure.expected_string.should == ';'
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
treetop-1.0.0 test/compiler/failure_propagation_functional_test.rb
treetop-1.1.1 test/compiler/failure_propagation_functional_test.rb
treetop-1.1.0 test/compiler/failure_propagation_functional_test.rb
treetop-1.0.1 test/compiler/failure_propagation_functional_test.rb
treetop-1.0.2 test/compiler/failure_propagation_functional_test.rb
treetop-1.1.2 test/compiler/failure_propagation_functional_test.rb