Sha256: 0c888011d8c3ed72ff11c0083923aeda2e8a9efb4d8e51a7026f2f5b8af246be

Contents?: true

Size: 711 Bytes

Versions: 4

Compression:

Stored size: 711 Bytes

Contents

require 'spec_helper'
module Gisele::Language
  describe Grammar, 'event_set' do

    it 'parses empty sets' do
      parse('{}', :event_set).should eq('{}')
      parse('{   }', :event_set).should eq('{   }')
    end

    it 'parses event singletons' do
      parse('{Task:start}', :event_set).should eq('{Task:start}')
      parse('{  Task:start  }', :event_set).should eq('{  Task:start  }')
    end

    it 'parses event sets' do
      parse('{Task:start, Task:end}', :event_set).should eq('{Task:start, Task:end}')
    end

    it 'recognizes invalid events in the set' do
      lambda{
        parse('{Task:start, NotAnEvent}', :event_set)
      }.should raise_error(Citrus::ParseError)
    end

  end
end

Version data entries

4 entries across 4 versions & 2 rubygems

Version Path
gisele-language-0.6.0 spec/language/syntax/grammar/test_event_set.rb
gisele-language-0.5.1 spec/language/syntax/grammar/test_event_set.rb
gisele-language-0.5.0 spec/language/syntax/grammar/test_event_set.rb
gisele-0.5.0 spec/unit/language/syntax/grammar/test_event_set.rb