gherkin 1.0.8-i386-mswin32 → 1.0.9-i386-mswin32

Sign up to get free protection for your applications and to get access to all the features.
data/.gitignore CHANGED
@@ -5,4 +5,5 @@ rdoc
5
5
  pkg
6
6
  ext
7
7
  tmp
8
- release
8
+ release
9
+ gherkin.gemspec
@@ -1,3 +1,8 @@
1
+ == 1.0.9 (2010-04-12)
2
+
3
+ === Bugfixes
4
+ * Triple escaped quotes (\"\"\") in PyStrings are unescaped to """. (Aslak Hellesøy)
5
+
1
6
  == 1.0.8 (2010-04-10)
2
7
 
3
8
  === Bugfixes
@@ -1,4 +1,4 @@
1
1
  ---
2
2
  :minor: 0
3
- :patch: 8
3
+ :patch: 9
4
4
  :major: 1
@@ -1,11 +1,11 @@
1
1
  require 'stringio'
2
2
  require 'gherkin'
3
- require 'gherkin/formatter/pretty_listener'
3
+ require 'gherkin/formatter/pretty_formatter'
4
4
 
5
5
  module PrettyPlease
6
6
  def pretty(source)
7
7
  io = StringIO.new
8
- listener = Gherkin::Formatter::PrettyListener.new(io)
8
+ listener = Gherkin::Formatter::PrettyFormatter.new(io)
9
9
  parser = Gherkin::Parser.new(listener, true)
10
10
  lexer = Gherkin::I18nLexer.new(parser)
11
11
  lexer.scan(source)
@@ -1,18 +1,10 @@
1
1
  module Gherkin
2
2
  module Formatter
3
3
  class Argument
4
- attr_reader :byte_offset, :val
4
+ require 'gherkin/java_impl'
5
+ java_impl('gherkin.jar')
5
6
 
6
- class << self
7
- def new(byte_offset, val)
8
- if defined?(JRUBY_VERSION)
9
- require 'gherkin.jar'
10
- Java::GherkinFormatter::Argument.new(byte_offset, val)
11
- else
12
- super
13
- end
14
- end
15
- end
7
+ attr_reader :byte_offset, :val
16
8
 
17
9
  def initialize(byte_offset, val)
18
10
  @byte_offset, @val = byte_offset, val
@@ -6,19 +6,11 @@ require 'gherkin/formatter/argument'
6
6
 
7
7
  module Gherkin
8
8
  module Formatter
9
- class PrettyListener
9
+ class PrettyFormatter
10
+ require 'gherkin/java_impl'
11
+ java_impl('gherkin.jar')
12
+
10
13
  include Colors
11
-
12
- class << self
13
- def new(io, monochrome=false)
14
- if defined?(JRUBY_VERSION)
15
- require 'gherkin.jar'
16
- Java::GherkinFormatter::PrettyFormatter.new(io, monochrome)
17
- else
18
- super
19
- end
20
- end
21
- end
22
14
 
23
15
  def initialize(io, monochrome=false)
24
16
  @io = io
@@ -46,7 +46,7 @@ module Gherkin
46
46
  @keywords['grammar_name'] = @keywords['name'].gsub(/\s/, '')
47
47
  end
48
48
 
49
- def lexer(listener, force_ruby)
49
+ def lexer(listener, force_ruby=false)
50
50
  begin
51
51
  if force_ruby
52
52
  rb(listener)
@@ -54,7 +54,7 @@ module Gherkin
54
54
  begin
55
55
  c(listener)
56
56
  rescue NameError, LoadError => e
57
- warn("WARNING: #{e.message}. Reverting to Ruby lexer.")
57
+ raise("WARNING: #{e.message}. Reverting to Ruby lexer.")
58
58
  rb(listener)
59
59
  end
60
60
  end
@@ -109,6 +109,7 @@ module Gherkin
109
109
  keywords('and', space)
110
110
  end
111
111
 
112
+ # Keywords that can be used in Gherkin source
112
113
  def step_keywords
113
114
  %w{given when then and but}.map{|key| keywords(key, true)}.flatten.uniq
114
115
  end
@@ -117,6 +118,13 @@ module Gherkin
117
118
  %w{given when then}.map{|key| keywords(key, true)}.flatten.uniq
118
119
  end
119
120
 
121
+ # Keywords that can be used in code
122
+ def code_keywords
123
+ result = gwt_keywords.map{|keyword| keyword.gsub(/[\s',]/, '').strip}
124
+ result.delete('*')
125
+ result
126
+ end
127
+
120
128
  def keywords(key, space=false)
121
129
  raise "No #{key} in #{@keywords.inspect}" if @keywords[key].nil?
122
130
  @keywords[key].split('|').map{|kw| space ? keyword_space(kw) : kw}
@@ -503,7 +503,7 @@
503
503
  scenario: Сценарій
504
504
  scenario_outline: Структура сценарію
505
505
  examples: Приклади
506
- given: "*|Припустимо|Припустимо що|Нехай"
506
+ given: "*|Припустимо|Припустимо, що|Нехай"
507
507
  when: "*|Якщо"
508
508
  then: "*|То"
509
509
  and: "*|І"
@@ -6,21 +6,12 @@ module Gherkin
6
6
 
7
7
  # The main entry point to lexing Gherkin source.
8
8
  class I18nLexer
9
- LANGUAGE_PATTERN = /language\s*:\s*(.*)/ #:nodoc:
9
+ require 'gherkin/java_impl'
10
+ java_impl('gherkin.jar')
10
11
 
12
+ LANGUAGE_PATTERN = /language\s*:\s*(.*)/ #:nodoc:
11
13
  attr_reader :i18n_language
12
14
 
13
- class << self
14
- def new(listener, force_ruby)
15
- if !force_ruby && defined?(JRUBY_VERSION)
16
- require 'gherkin.jar'
17
- Java::Gherkin::I18nLexer.new(listener)
18
- else
19
- super
20
- end
21
- end
22
- end
23
-
24
15
  def initialize(listener, force_ruby)
25
16
  @listener = listener
26
17
  @force_ruby = force_ruby
@@ -0,0 +1,21 @@
1
+ class Class
2
+ # Causes a Java class to be instantiated instead of the Ruby class when
3
+ # running on JRuby. This is used to test both pure Java and pure Ruby classes
4
+ # from the same Ruby based test suite. The Java Class must have a package name
5
+ # that corresponds with the Ruby class.
6
+ def java_impl(jar)
7
+ if defined?(JRUBY_VERSION)
8
+ require jar
9
+ class << self
10
+ define_method(:new) do |*args|
11
+ names = self.name.split('::')
12
+ package = Java
13
+ names[0..-2].each do |module_name|
14
+ package = package.__send__(module_name.downcase)
15
+ end
16
+ package.__send__(names[-1]).new(*args)
17
+ end
18
+ end
19
+ end
20
+ end
21
+ end
@@ -7,17 +7,11 @@ module Gherkin
7
7
  end
8
8
 
9
9
  class Parser
10
- def self.new(listener, raise_on_error=true, machine_name='root')
11
- if defined?(JRUBY_VERSION)
12
- require 'gherkin.jar'
13
- Java::GherkinParser::Parser.new(listener, raise_on_error, machine_name)
14
- else
15
- super
16
- end
17
- end
10
+ require 'gherkin/java_impl'
11
+ java_impl('gherkin.jar')
18
12
 
19
13
  # Initialize the parser. +machine_name+ refers to a state machine table.
20
- def initialize(listener, raise_on_error, machine_name)
14
+ def initialize(listener, raise_on_error=true, machine_name='root')
21
15
  @listener = listener
22
16
  @raise_on_error = raise_on_error
23
17
  @machines = []
@@ -121,7 +115,7 @@ module Gherkin
121
115
 
122
116
  def transition_table(name)
123
117
  state_machine_reader = StateMachineReader.new
124
- lexer = Gherkin::I18n.new('en').lexer(state_machine_reader, false)
118
+ lexer = Gherkin::I18n.new('en').lexer(state_machine_reader)
125
119
  lexer.scan(File.read(File.dirname(__FILE__) + "/#{name}.txt"))
126
120
  state_machine_reader.rows
127
121
  end
@@ -1,6 +1,6 @@
1
1
  require 'stringio'
2
2
  require 'gherkin/tools/files'
3
- require 'gherkin/tools/pretty_listener'
3
+ require 'gherkin/formatter/pretty_formatter'
4
4
 
5
5
  module Gherkin
6
6
  module Tools
@@ -8,7 +8,7 @@ module Gherkin
8
8
  def run
9
9
  each do |file|
10
10
  purdy = StringIO.new
11
- listener = PrettyListener.new(purdy)
11
+ listener = PrettyFormatter.new(purdy)
12
12
  scan(file, listener)
13
13
  purdy.rewind
14
14
  File.open(file, 'w') {|io| io.write(purdy.read)}
@@ -293,8 +293,10 @@ store_pystring_content(VALUE listener,
293
293
  snprintf(pat, 32, "^ {0,%d}", start_col);
294
294
  VALUE re = rb_reg_regcomp(rb_str_new2(pat));
295
295
  VALUE re2 = rb_reg_regcomp(rb_str_new2("\r\\Z"));
296
+ VALUE unescape_escaped_quotes = rb_reg_regcomp(rb_str_new2("\\\\\"\\\\\"\\\\\""));
296
297
  rb_funcall(con, rb_intern("gsub!"), 2, re, rb_str_new2(""));
297
298
  rb_funcall(con, rb_intern("sub!"), 2, re2, rb_str_new2(""));
299
+ rb_funcall(con, rb_intern("gsub!"), 2, unescape_escaped_quotes, rb_str_new2("\"\"\""));
298
300
  rb_funcall(listener, rb_intern("py_string"), 2, con, INT2FIX(current_line));
299
301
  }
300
302
 
@@ -28,7 +28,7 @@ public class <%= @i18n.sanitized_key.upcase %> implements Lexer {
28
28
  }
29
29
 
30
30
  action store_pystring_content {
31
- String con = unindent(startCol, substring(data, contentStart, nextKeywordStart-1).replaceFirst("(\\r?\\n)?( )*\\Z", ""));
31
+ String con = unindent(startCol, substring(data, contentStart, nextKeywordStart-1).replaceFirst("(\\r?\\n)?( )*\\Z", "").replaceAll("\\\\\"\\\\\"\\\\\"", "\"\"\""));
32
32
  listener.py_string(con, currentLine);
33
33
  }
34
34
 
@@ -21,7 +21,7 @@ module Gherkin
21
21
  }
22
22
 
23
23
  action store_pystring_content {
24
- con = unindent(@start_col, data[@content_start...@next_keyword_start-1].utf8_pack("c*").sub(/(\r?\n)?( )*\Z/, ''))
24
+ con = unindent(@start_col, data[@content_start...@next_keyword_start-1].utf8_pack("c*").sub(/(\r?\n)?( )*\Z/, '').gsub(/\\"\\"\\"/, '"""'))
25
25
  @listener.py_string(con, @current_line)
26
26
  }
27
27
 
@@ -1,5 +1,5 @@
1
1
  require File.expand_path(File.dirname(__FILE__) + '/../../spec_helper')
2
- require 'gherkin/formatter/pretty_listener'
2
+ require 'gherkin/formatter/pretty_formatter'
3
3
 
4
4
 
5
5
  module Gherkin
@@ -1,12 +1,12 @@
1
1
  # encoding: utf-8
2
2
  require File.expand_path(File.dirname(__FILE__) + '/../../spec_helper')
3
- require 'gherkin/formatter/pretty_listener'
3
+ require 'gherkin/formatter/pretty_formatter'
4
4
  require 'gherkin/formatter/argument'
5
5
  require 'stringio'
6
6
 
7
7
  module Gherkin
8
8
  module Formatter
9
- describe PrettyListener do
9
+ describe PrettyFormatter do
10
10
  def assert_io(s)
11
11
  @io.rewind
12
12
  actual = @io.read
@@ -15,7 +15,7 @@ module Gherkin
15
15
 
16
16
  def assert_pretty(text)
17
17
  io = StringIO.new
18
- l = PrettyListener.new(io, true)
18
+ l = PrettyFormatter.new(io, true)
19
19
  parser = Gherkin::Parser::Parser.new(l, true, "root")
20
20
  lexer = Gherkin::I18nLexer.new(parser, true)
21
21
  lexer.scan(text)
@@ -26,7 +26,7 @@ module Gherkin
26
26
 
27
27
  before do
28
28
  @io = StringIO.new
29
- @l = PrettyListener.new(@io, true)
29
+ @l = PrettyFormatter.new(@io, true)
30
30
  end
31
31
 
32
32
  it "should print comments when scenario is longer" do
@@ -1,7 +1,7 @@
1
1
  # encoding: utf-8
2
2
  require File.expand_path(File.dirname(__FILE__) + '/../../spec_helper')
3
3
  require 'gherkin/parser/filter_listener'
4
- require 'gherkin/formatter/pretty_listener'
4
+ require 'gherkin/formatter/pretty_formatter'
5
5
  require 'stringio'
6
6
 
7
7
  module Gherkin
@@ -25,7 +25,7 @@ module Gherkin
25
25
 
26
26
  def verify_output(expected_output, filters)
27
27
  io = StringIO.new
28
- scan(Gherkin::Formatter::PrettyListener.new(io, true), filters)
28
+ scan(Gherkin::Formatter::PrettyFormatter.new(io, true), filters)
29
29
  io.rewind
30
30
  io.read.should == expected_output
31
31
  end
@@ -125,6 +125,26 @@ EOS
125
125
  @listener.should_receive(:py_string).with("Line one\r\nLine two\r\n", 1)
126
126
  @lexer.scan("\"\"\"\r\nLine one\r\nLine two\r\n\r\n\"\"\"")
127
127
  end
128
+
129
+ it "should unescape escaped triple quotes" do
130
+ str = <<EOS
131
+ """
132
+ \\"\\"\\"
133
+ """
134
+ EOS
135
+ @listener.should_receive(:py_string).with('"""', 1)
136
+ @lexer.scan(str)
137
+ end
138
+
139
+ it "should not unescape escaped single quotes" do
140
+ str = <<EOS
141
+ """
142
+ \\" \\"\\"
143
+ """
144
+ EOS
145
+ @listener.should_receive(:py_string).with('\" \"\"', 1)
146
+ @lexer.scan(str)
147
+ end
128
148
  end
129
149
  end
130
150
  end
@@ -1,3 +1,4 @@
1
+ begin
1
2
  require 'cucumber/rake/task'
2
3
 
3
4
  Cucumber::Rake::Task.new(:cucumber) do |t|
@@ -18,3 +19,8 @@ namespace :cucumber do
18
19
  task :native_lexer => [:check_dependencies, :clean, :compile]
19
20
  end
20
21
 
22
+ rescue LoadError
23
+ task :cucumber do
24
+ raise "Cucumber not installed"
25
+ end
26
+ end
metadata CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
5
5
  segments:
6
6
  - 1
7
7
  - 0
8
- - 8
9
- version: 1.0.8
8
+ - 9
9
+ version: 1.0.9
10
10
  platform: i386-mswin32
11
11
  authors:
12
12
  - Mike Sassak
@@ -16,7 +16,7 @@ autorequire:
16
16
  bindir: bin
17
17
  cert_chain: []
18
18
 
19
- date: 2010-04-11 00:00:00 +02:00
19
+ date: 2010-04-12 00:00:00 +02:00
20
20
  default_executable: gherkin
21
21
  dependencies:
22
22
  - !ruby/object:Gem::Dependency
@@ -99,10 +99,9 @@ files:
99
99
  - features/parser_with_native_lexer.feature
100
100
  - features/pretty_printer.feature
101
101
  - features/step_definitions/gherkin_steps.rb
102
- - features/step_definitions/pretty_listener_step.rb
102
+ - features/step_definitions/pretty_formatter_steps.rb
103
103
  - features/steps_parser.feature
104
104
  - features/support/env.rb
105
- - gherkin.gemspec
106
105
  - ikvm/.gitignore
107
106
  - java/.gitignore
108
107
  - java/src/main/java/gherkin/lexer/.gitignore
@@ -115,10 +114,11 @@ files:
115
114
  - lib/gherkin/formatter/argument.rb
116
115
  - lib/gherkin/formatter/colors.rb
117
116
  - lib/gherkin/formatter/monochrome_format.rb
118
- - lib/gherkin/formatter/pretty_listener.rb
117
+ - lib/gherkin/formatter/pretty_formatter.rb
119
118
  - lib/gherkin/i18n.rb
120
119
  - lib/gherkin/i18n.yml
121
120
  - lib/gherkin/i18n_lexer.rb
121
+ - lib/gherkin/java_impl.rb
122
122
  - lib/gherkin/parser/filter_listener.rb
123
123
  - lib/gherkin/parser/meta.txt
124
124
  - lib/gherkin/parser/parser.rb
@@ -195,7 +195,7 @@ files:
195
195
  - spec/gherkin/fixtures/simple_with_tags.feature
196
196
  - spec/gherkin/formatter/argument_spec.rb
197
197
  - spec/gherkin/formatter/colors_spec.rb
198
- - spec/gherkin/formatter/pretty_listener_spec.rb
198
+ - spec/gherkin/formatter/pretty_formatter_spec.rb
199
199
  - spec/gherkin/i18n_lexer_spec.rb
200
200
  - spec/gherkin/i18n_spec.rb
201
201
  - spec/gherkin/java_lexer_spec.rb
@@ -256,7 +256,7 @@ test_files:
256
256
  - spec/gherkin/csharp_lexer_spec.rb
257
257
  - spec/gherkin/formatter/argument_spec.rb
258
258
  - spec/gherkin/formatter/colors_spec.rb
259
- - spec/gherkin/formatter/pretty_listener_spec.rb
259
+ - spec/gherkin/formatter/pretty_formatter_spec.rb
260
260
  - spec/gherkin/i18n_lexer_spec.rb
261
261
  - spec/gherkin/i18n_spec.rb
262
262
  - spec/gherkin/java_lexer_spec.rb
@@ -1,209 +0,0 @@
1
- # Generated by jeweler
2
- # DO NOT EDIT THIS FILE DIRECTLY
3
- # Instead, edit Jeweler::Tasks in Rakefile, and run the gemspec command
4
- # -*- encoding: utf-8 -*-
5
-
6
- Gem::Specification.new do |s|
7
- s.name = %q{gherkin}
8
- s.version = "1.0.8"
9
- s.platform = %q{i386-mswin32}
10
-
11
- s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
12
- s.authors = ["Mike Sassak", "Gregory Hnatiuk", "Aslak Helles\303\270y"]
13
- s.date = %q{2010-04-11}
14
- s.default_executable = %q{gherkin}
15
- s.description = %q{A fast Gherkin lexer/parser based on the Ragel State Machine Compiler.}
16
- s.email = %q{cukes@googlegroups.com}
17
- s.executables = ["gherkin"]
18
- s.extra_rdoc_files = [
19
- "LICENSE",
20
- "README.rdoc"
21
- ]
22
- s.files = [
23
- ".gitattributes",
24
- ".gitignore",
25
- ".mailmap",
26
- "History.txt",
27
- "LICENSE",
28
- "README.rdoc",
29
- "Rakefile",
30
- "VERSION.yml",
31
- "bin/gherkin",
32
- "cucumber.yml",
33
- "features/feature_parser.feature",
34
- "features/native_lexer.feature",
35
- "features/parser_with_native_lexer.feature",
36
- "features/pretty_printer.feature",
37
- "features/step_definitions/gherkin_steps.rb",
38
- "features/step_definitions/pretty_listener_step.rb",
39
- "features/steps_parser.feature",
40
- "features/support/env.rb",
41
- "gherkin.gemspec",
42
- "ikvm/.gitignore",
43
- "java/.gitignore",
44
- "java/src/main/java/gherkin/lexer/.gitignore",
45
- "lib/.gitignore",
46
- "lib/gherkin.rb",
47
- "lib/gherkin/c_lexer.rb",
48
- "lib/gherkin/cli/main.rb",
49
- "lib/gherkin/core_ext/array.rb",
50
- "lib/gherkin/csharp_lexer.rb",
51
- "lib/gherkin/formatter/argument.rb",
52
- "lib/gherkin/formatter/colors.rb",
53
- "lib/gherkin/formatter/monochrome_format.rb",
54
- "lib/gherkin/formatter/pretty_listener.rb",
55
- "lib/gherkin/i18n.rb",
56
- "lib/gherkin/i18n.yml",
57
- "lib/gherkin/i18n_lexer.rb",
58
- "lib/gherkin/parser/filter_listener.rb",
59
- "lib/gherkin/parser/meta.txt",
60
- "lib/gherkin/parser/parser.rb",
61
- "lib/gherkin/parser/root.txt",
62
- "lib/gherkin/parser/sexp.rb",
63
- "lib/gherkin/parser/steps.txt",
64
- "lib/gherkin/parser/tag_expression.rb",
65
- "lib/gherkin/rb_lexer.rb",
66
- "lib/gherkin/rb_lexer/.gitignore",
67
- "lib/gherkin/rb_lexer/README.rdoc",
68
- "lib/gherkin/tools.rb",
69
- "lib/gherkin/tools/files.rb",
70
- "lib/gherkin/tools/reformat.rb",
71
- "lib/gherkin/tools/stats.rb",
72
- "lib/gherkin/tools/stats_listener.rb",
73
- "lib/gherkin_lexer_ar.so",
74
- "lib/gherkin_lexer_bg.so",
75
- "lib/gherkin_lexer_ca.so",
76
- "lib/gherkin_lexer_cs.so",
77
- "lib/gherkin_lexer_cy_gb.so",
78
- "lib/gherkin_lexer_da.so",
79
- "lib/gherkin_lexer_de.so",
80
- "lib/gherkin_lexer_en.so",
81
- "lib/gherkin_lexer_en_au.so",
82
- "lib/gherkin_lexer_en_lol.so",
83
- "lib/gherkin_lexer_en_scouse.so",
84
- "lib/gherkin_lexer_en_tx.so",
85
- "lib/gherkin_lexer_es.so",
86
- "lib/gherkin_lexer_et.so",
87
- "lib/gherkin_lexer_fi.so",
88
- "lib/gherkin_lexer_fr.so",
89
- "lib/gherkin_lexer_he.so",
90
- "lib/gherkin_lexer_hr.so",
91
- "lib/gherkin_lexer_hu.so",
92
- "lib/gherkin_lexer_id.so",
93
- "lib/gherkin_lexer_it.so",
94
- "lib/gherkin_lexer_ja.so",
95
- "lib/gherkin_lexer_ko.so",
96
- "lib/gherkin_lexer_lt.so",
97
- "lib/gherkin_lexer_lv.so",
98
- "lib/gherkin_lexer_nl.so",
99
- "lib/gherkin_lexer_no.so",
100
- "lib/gherkin_lexer_pl.so",
101
- "lib/gherkin_lexer_pt.so",
102
- "lib/gherkin_lexer_ro.so",
103
- "lib/gherkin_lexer_ro_ro.so",
104
- "lib/gherkin_lexer_ru.so",
105
- "lib/gherkin_lexer_sk.so",
106
- "lib/gherkin_lexer_sr_cyrl.so",
107
- "lib/gherkin_lexer_sr_latn.so",
108
- "lib/gherkin_lexer_sv.so",
109
- "lib/gherkin_lexer_tr.so",
110
- "lib/gherkin_lexer_uk.so",
111
- "lib/gherkin_lexer_uz.so",
112
- "lib/gherkin_lexer_vi.so",
113
- "lib/gherkin_lexer_zh_cn.so",
114
- "lib/gherkin_lexer_zh_tw.so",
115
- "ragel/i18n/.gitignore",
116
- "ragel/lexer.c.rl.erb",
117
- "ragel/lexer.java.rl.erb",
118
- "ragel/lexer.rb.rl.erb",
119
- "ragel/lexer_common.rl.erb",
120
- "spec/gherkin/c_lexer_spec.rb",
121
- "spec/gherkin/csharp_lexer_spec.rb",
122
- "spec/gherkin/fixtures/1.feature",
123
- "spec/gherkin/fixtures/comments_in_table.feature",
124
- "spec/gherkin/fixtures/complex.feature",
125
- "spec/gherkin/fixtures/dos_line_endings.feature",
126
- "spec/gherkin/fixtures/i18n_fr.feature",
127
- "spec/gherkin/fixtures/i18n_no.feature",
128
- "spec/gherkin/fixtures/i18n_zh-CN.feature",
129
- "spec/gherkin/fixtures/simple.feature",
130
- "spec/gherkin/fixtures/simple_with_comments.feature",
131
- "spec/gherkin/fixtures/simple_with_tags.feature",
132
- "spec/gherkin/formatter/argument_spec.rb",
133
- "spec/gherkin/formatter/colors_spec.rb",
134
- "spec/gherkin/formatter/pretty_listener_spec.rb",
135
- "spec/gherkin/i18n_lexer_spec.rb",
136
- "spec/gherkin/i18n_spec.rb",
137
- "spec/gherkin/java_lexer_spec.rb",
138
- "spec/gherkin/parser/filter_listener_spec.rb",
139
- "spec/gherkin/parser/parser_spec.rb",
140
- "spec/gherkin/parser/tag_expression_spec.rb",
141
- "spec/gherkin/rb_lexer_spec.rb",
142
- "spec/gherkin/sexp_recorder.rb",
143
- "spec/gherkin/shared/lexer_spec.rb",
144
- "spec/gherkin/shared/py_string_spec.rb",
145
- "spec/gherkin/shared/row_spec.rb",
146
- "spec/gherkin/shared/tags_spec.rb",
147
- "spec/spec_helper.rb",
148
- "tasks/bench.rake",
149
- "tasks/bench/feature_builder.rb",
150
- "tasks/bench/generated/.gitignore",
151
- "tasks/bench/null_listener.rb",
152
- "tasks/compile.rake",
153
- "tasks/cucumber.rake",
154
- "tasks/gems.rake",
155
- "tasks/ikvm.rake",
156
- "tasks/ragel_task.rb",
157
- "tasks/rdoc.rake",
158
- "tasks/release.rake",
159
- "tasks/rspec.rake"
160
- ]
161
- s.homepage = %q{http://github.com/aslakhellesoy/gherkin}
162
- s.rdoc_options = ["--charset=UTF-8"]
163
- s.require_paths = ["lib"]
164
- s.rubygems_version = %q{1.3.6}
165
- s.summary = %q{Fast Gherkin lexer/parser}
166
- s.test_files = [
167
- "spec/gherkin/c_lexer_spec.rb",
168
- "spec/gherkin/csharp_lexer_spec.rb",
169
- "spec/gherkin/formatter/argument_spec.rb",
170
- "spec/gherkin/formatter/colors_spec.rb",
171
- "spec/gherkin/formatter/pretty_listener_spec.rb",
172
- "spec/gherkin/i18n_lexer_spec.rb",
173
- "spec/gherkin/i18n_spec.rb",
174
- "spec/gherkin/java_lexer_spec.rb",
175
- "spec/gherkin/parser/filter_listener_spec.rb",
176
- "spec/gherkin/parser/parser_spec.rb",
177
- "spec/gherkin/parser/tag_expression_spec.rb",
178
- "spec/gherkin/rb_lexer_spec.rb",
179
- "spec/gherkin/sexp_recorder.rb",
180
- "spec/gherkin/shared/lexer_spec.rb",
181
- "spec/gherkin/shared/py_string_spec.rb",
182
- "spec/gherkin/shared/row_spec.rb",
183
- "spec/gherkin/shared/tags_spec.rb",
184
- "spec/spec_helper.rb"
185
- ]
186
-
187
- if s.respond_to? :specification_version then
188
- current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
189
- s.specification_version = 3
190
-
191
- if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
192
- s.add_runtime_dependency(%q<trollop>, [">= 1.15"])
193
- s.add_development_dependency(%q<rspec>, [">= 1.3.0"])
194
- s.add_development_dependency(%q<cucumber>, [">= 0.6.4"])
195
- s.add_development_dependency(%q<rake-compiler>, [">= 0.7.0"])
196
- else
197
- s.add_dependency(%q<trollop>, [">= 1.15"])
198
- s.add_dependency(%q<rspec>, [">= 1.3.0"])
199
- s.add_dependency(%q<cucumber>, [">= 0.6.4"])
200
- s.add_dependency(%q<rake-compiler>, [">= 0.7.0"])
201
- end
202
- else
203
- s.add_dependency(%q<trollop>, [">= 1.15"])
204
- s.add_dependency(%q<rspec>, [">= 1.3.0"])
205
- s.add_dependency(%q<cucumber>, [">= 0.6.4"])
206
- s.add_dependency(%q<rake-compiler>, [">= 0.7.0"])
207
- end
208
- end
209
-