gherkin 1.0.8-i386-mswin32 → 1.0.9-i386-mswin32
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/.gitignore +2 -1
- data/History.txt +5 -0
- data/VERSION.yml +1 -1
- data/features/step_definitions/{pretty_listener_step.rb → pretty_formatter_steps.rb} +2 -2
- data/lib/gherkin/formatter/argument.rb +3 -11
- data/lib/gherkin/formatter/{pretty_listener.rb → pretty_formatter.rb} +4 -12
- data/lib/gherkin/i18n.rb +10 -2
- data/lib/gherkin/i18n.yml +1 -1
- data/lib/gherkin/i18n_lexer.rb +3 -12
- data/lib/gherkin/java_impl.rb +21 -0
- data/lib/gherkin/parser/parser.rb +4 -10
- data/lib/gherkin/tools/reformat.rb +2 -2
- data/ragel/lexer.c.rl.erb +2 -0
- data/ragel/lexer.java.rl.erb +1 -1
- data/ragel/lexer.rb.rl.erb +1 -1
- data/spec/gherkin/formatter/colors_spec.rb +1 -1
- data/spec/gherkin/formatter/{pretty_listener_spec.rb → pretty_formatter_spec.rb} +4 -4
- data/spec/gherkin/parser/filter_listener_spec.rb +2 -2
- data/spec/gherkin/shared/py_string_spec.rb +20 -0
- data/tasks/cucumber.rake +6 -0
- metadata +8 -8
- data/gherkin.gemspec +0 -209
data/.gitignore
CHANGED
data/History.txt
CHANGED
data/VERSION.yml
CHANGED
@@ -1,11 +1,11 @@
|
|
1
1
|
require 'stringio'
|
2
2
|
require 'gherkin'
|
3
|
-
require 'gherkin/formatter/
|
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::
|
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
|
-
|
4
|
+
require 'gherkin/java_impl'
|
5
|
+
java_impl('gherkin.jar')
|
5
6
|
|
6
|
-
|
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
|
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
|
data/lib/gherkin/i18n.rb
CHANGED
@@ -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
|
-
|
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}
|
data/lib/gherkin/i18n.yml
CHANGED
data/lib/gherkin/i18n_lexer.rb
CHANGED
@@ -6,21 +6,12 @@ module Gherkin
|
|
6
6
|
|
7
7
|
# The main entry point to lexing Gherkin source.
|
8
8
|
class I18nLexer
|
9
|
-
|
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
|
-
|
11
|
-
|
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
|
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/
|
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 =
|
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)}
|
data/ragel/lexer.c.rl.erb
CHANGED
@@ -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
|
|
data/ragel/lexer.java.rl.erb
CHANGED
@@ -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
|
|
data/ragel/lexer.rb.rl.erb
CHANGED
@@ -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,12 +1,12 @@
|
|
1
1
|
# encoding: utf-8
|
2
2
|
require File.expand_path(File.dirname(__FILE__) + '/../../spec_helper')
|
3
|
-
require 'gherkin/formatter/
|
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
|
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 =
|
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 =
|
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/
|
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::
|
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
|
data/tasks/cucumber.rake
CHANGED
@@ -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
|
-
-
|
9
|
-
version: 1.0.
|
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-
|
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/
|
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/
|
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/
|
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/
|
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
|
data/gherkin.gemspec
DELETED
@@ -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
|
-
|