Sha256: 6585a68f6daf7c7475157a0a3627029dd57550ba68f0df16f4b96c775f765918

Contents?: true

Size: 1.06 KB

Versions: 251

Compression:

Stored size: 1.06 KB

Contents

require 'spec_helper'

module NotPredicateSpec
  describe "A !-predicated terminal symbol" do
    testing_expression '!"foo"'

    it "fails to parse input matching the terminal symbol" do
      parse('foo').should be_nil
    end
  end

  describe "A sequence of a terminal and an and another !-predicated terminal" do
    testing_expression '"foo" !"bar"'

    it "fails to match input matching both terminals" do
      parse('foobar').should be_nil
    end
  
    it "successfully parses input matching the first terminal and not the second, reporting the parse failure of the second terminal" do
      parse('foo') do |result|
        result.should_not be_nil
        terminal_failures = parser.terminal_failures
        terminal_failures.size.should == 1
        failure = terminal_failures.first
        failure.index.should == 3
        failure.expected_string.should == 'bar'
      end
    end
  end

  describe "A !-predicated sequence" do
    testing_expression '!("a" "b" "c")'

    it "fails to parse matching input" do
      parse('abc').should be_nil
    end
  end
end

Version data entries

251 entries across 206 versions & 31 rubygems

Version Path
logstash-filter-cache-redis-0.1.0 vendor/bundle/jruby/1.9/gems/treetop-1.4.15/spec/compiler/not_predicate_spec.rb
logstash-filter-csharp-0.1.0 vendor/bundle/jruby/2.3.0/gems/treetop-1.4.15/spec/compiler/not_predicate_spec.rb
logstash-filter-htmlentities-0.1.0 vendor/bundle/jruby/1.9/gems/treetop-1.4.15/spec/compiler/not_predicate_spec.rb
logstash-output-icinga-1.0.0 vendor/jruby/1.9/gems/treetop-1.4.15/spec/compiler/not_predicate_spec.rb
logstash-filter-zabbix-0.1.2 vendor/bundle/jruby/1.9/gems/treetop-1.4.15/spec/compiler/not_predicate_spec.rb
logstash-filter-zabbix-0.1.1 vendor/bundle/jruby/1.9/gems/treetop-1.4.15/spec/compiler/not_predicate_spec.rb
logstash-input-fifo-0.9.1 vendor/bundle/jruby/1.9/gems/treetop-1.4.15/spec/compiler/not_predicate_spec.rb
logstash-input-fifo-0.9.0 vendor/bundle/jruby/1.9/gems/treetop-1.4.15/spec/compiler/not_predicate_spec.rb
logstash-input-salesforce-3.0.0 vendor/jruby/1.9/gems/treetop-1.4.15/spec/compiler/not_predicate_spec.rb
ivanvc-logstash-input-s3-3.1.1.4 vendor/local/gems/treetop-1.4.15/spec/compiler/not_predicate_spec.rb
ivanvc-logstash-input-s3-3.1.1.3 vendor/local/gems/treetop-1.4.15/spec/compiler/not_predicate_spec.rb
ivanvc-logstash-input-s3-3.1.1.2 vendor/local/gems/treetop-1.4.15/spec/compiler/not_predicate_spec.rb
logstash-filter-delta-1.1.0 vendor/bundle/jruby/2.2.0/gems/treetop-1.4.15/spec/compiler/not_predicate_spec.rb
logstash-filter-delta-1.0.1 vendor/bundle/jruby/2.2.0/gems/treetop-1.4.15/spec/compiler/not_predicate_spec.rb
logstash-filter-base64-1.0.4 vendor/bundle/jruby/2.2.0/gems/treetop-1.4.15/spec/compiler/not_predicate_spec.rb
logstash-filter-base64-1.0.3 vendor/bundle/jruby/2.2.0/gems/treetop-1.4.15/spec/compiler/not_predicate_spec.rb
logstash-filter-delta-1.0.0 vendor/bundle/jruby/2.2.0/gems/treetop-1.4.15/spec/compiler/not_predicate_spec.rb
logstash-filter-base64-1.0.2 vendor/bundle/jruby/2.3.0/gems/treetop-1.4.15/spec/compiler/not_predicate_spec.rb
logstash-filter-base64-1.0.1 vendor/bundle/jruby/2.3.0/gems/treetop-1.4.15/spec/compiler/not_predicate_spec.rb
logstash-filter-base64-1.0.0 vendor/bundle/jruby/2.3.0/gems/treetop-1.4.15/spec/compiler/not_predicate_spec.rb