cucumber 0.4.4 → 0.4.5.rc1
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitignore +2 -1
- data/Caliper.yml +5 -0
- data/History.txt +24 -1
- data/Rakefile +1 -1
- data/VERSION.yml +2 -2
- data/cucumber.gemspec +18 -27
- data/cucumber.yml +10 -4
- data/examples/i18n/README.textile +1 -1
- data/examples/i18n/bg/features/consecutive_calculations.feature +1 -1
- data/examples/i18n/bg/features/division.feature +1 -1
- data/examples/i18n/en-lol/Rakefile +1 -3
- data/examples/i18n/en/features/division.feature +4 -4
- data/examples/i18n/et/features/jagamine.feature +1 -1
- data/examples/i18n/fr/features/addition2.feature +17 -0
- data/examples/i18n/fr/features/step_definitions/calculatrice_steps.rb +13 -0
- data/examples/i18n/ja/features/step_definitons/calculator_steps.rb +3 -3
- data/examples/i18n/lt/features/addition.feature +2 -2
- data/examples/i18n/lt/features/division.feature +1 -1
- data/examples/i18n/zh-CN/Rakefile +1 -3
- data/examples/i18n/zh-TW/Rakefile +1 -3
- data/examples/tcl/README.textile +11 -0
- data/examples/tcl/Rakefile +6 -0
- data/examples/tcl/features/fibonnacci.feature +17 -0
- data/examples/tcl/features/step_definitions/fib_steps.rb +7 -0
- data/examples/tcl/features/support/env.rb +6 -0
- data/examples/tcl/src/fib.tcl +3 -0
- data/examples/tickets/features/177/1.feature +3 -4
- data/examples/tickets/features/177/2.feature +2 -3
- data/examples/tickets/features/241.feature +2 -3
- data/examples/tickets/features/301/filter_background_tagged_hooks.feature +1 -1
- data/features/cucumber_cli.feature +4 -2
- data/features/custom_formatter.feature +32 -31
- data/features/html_formatter/a.html +319 -102
- data/features/language_help.feature +12 -14
- data/features/support/env.rb +1 -1
- data/features/transform.feature +17 -3
- data/gem_tasks/features.rake +3 -1
- data/lib/cucumber/ast/scenario_outline.rb +1 -1
- data/lib/cucumber/ast/step_invocation.rb +2 -2
- data/lib/cucumber/cli/configuration.rb +2 -17
- data/lib/cucumber/cli/language_help_formatter.rb +1 -1
- data/lib/cucumber/cli/options.rb +5 -4
- data/lib/cucumber/formatter/cucumber.css +198 -82
- data/lib/cucumber/formatter/cucumber.sass +173 -71
- data/lib/cucumber/formatter/html.rb +371 -195
- data/lib/cucumber/formatter/io.rb +33 -0
- data/lib/cucumber/formatter/junit.rb +16 -7
- data/lib/cucumber/formatter/pdf.rb +5 -5
- data/lib/cucumber/formatter/pretty.rb +6 -8
- data/lib/cucumber/formatter/progress.rb +4 -2
- data/lib/cucumber/formatter/rerun.rb +4 -2
- data/lib/cucumber/formatter/steps.rb +2 -2
- data/lib/cucumber/formatter/tag_cloud.rb +6 -2
- data/lib/cucumber/formatter/usage.rb +2 -2
- data/lib/cucumber/languages.yml +205 -281
- data/lib/cucumber/parser/feature.rb +348 -82
- data/lib/cucumber/parser/feature.tt +47 -11
- data/lib/cucumber/parser/i18n.tt +7 -17
- data/lib/cucumber/parser/natural_language.rb +45 -18
- data/lib/cucumber/rb_support/rb_transform.rb +1 -1
- data/lib/cucumber/step_mother.rb +2 -3
- data/lib/cucumber/webrat/element_locator.rb +9 -5
- data/spec/cucumber/cli/options_spec.rb +0 -3
- data/spec/cucumber/formatter/html_spec.rb +15 -2
- data/spec/cucumber/formatter/junit_spec.rb +3 -0
- data/spec/cucumber/treetop_parser/fit_scenario.feature +2 -2
- data/spec/cucumber/treetop_parser/given_scenario.feature +1 -1
- data/spec/cucumber/treetop_parser/multiple_tables.feature +2 -2
- data/spec/cucumber/treetop_parser/test_dos.feature +1 -1
- metadata +17 -26
- data/Manifest.txt +0 -0
- data/lib/cucumber/rails/action_controller.rb +0 -38
- data/lib/cucumber/rails/active_record.rb +0 -30
- data/lib/cucumber/rails/rspec.rb +0 -10
- data/lib/cucumber/rails/test_unit.rb +0 -9
- data/lib/cucumber/rails/world.rb +0 -30
- data/rails_generators/cucumber/USAGE +0 -11
- data/rails_generators/cucumber/cucumber_generator.rb +0 -117
- data/rails_generators/cucumber/templates/cucumber +0 -17
- data/rails_generators/cucumber/templates/cucumber.rake +0 -46
- data/rails_generators/cucumber/templates/cucumber_environment.rb +0 -30
- data/rails_generators/cucumber/templates/env.rb +0 -49
- data/rails_generators/cucumber/templates/paths.rb +0 -27
- data/rails_generators/cucumber/templates/spork_env.rb +0 -57
- data/rails_generators/cucumber/templates/version_check.rb +0 -31
- data/rails_generators/cucumber/templates/webrat_steps.rb +0 -241
- data/rails_generators/feature/USAGE +0 -12
- data/rails_generators/feature/feature_generator.rb +0 -40
- data/rails_generators/feature/templates/feature.erb +0 -31
- data/rails_generators/feature/templates/steps.erb +0 -14
@@ -76,8 +76,8 @@ module Cucumber
|
|
76
76
|
steps.at_line?(line)
|
77
77
|
end
|
78
78
|
|
79
|
-
def matches_tags?(
|
80
|
-
Ast::Tags.matches?(self.parent.tags.tag_names,
|
79
|
+
def matches_tags?(tag_names)
|
80
|
+
Ast::Tags.matches?(self.parent.tags.tag_names, tag_names)
|
81
81
|
end
|
82
82
|
|
83
83
|
def build
|
@@ -116,10 +116,10 @@ module Cucumber
|
|
116
116
|
tags.at_line?(line)
|
117
117
|
end
|
118
118
|
|
119
|
-
def matches_tags?(
|
119
|
+
def matches_tags?(tag_names)
|
120
120
|
feature_tag_names = self.parent.parent.tags.tag_names
|
121
121
|
source_tag_names = (feature_tag_names + tags.tag_names).uniq
|
122
|
-
Ast::Tags.matches?(source_tag_names,
|
122
|
+
Ast::Tags.matches?(source_tag_names, tag_names)
|
123
123
|
end
|
124
124
|
|
125
125
|
def matches_name?(regexp_to_match)
|
@@ -153,10 +153,10 @@ module Cucumber
|
|
153
153
|
steps.at_line?(line)
|
154
154
|
end
|
155
155
|
|
156
|
-
def matches_tags?(
|
156
|
+
def matches_tags?(tag_names)
|
157
157
|
feature_tag_names = self.parent.parent.tags.tag_names
|
158
158
|
source_tag_names = (feature_tag_names + tags.tag_names).uniq
|
159
|
-
Ast::Tags.matches?(source_tag_names,
|
159
|
+
Ast::Tags.matches?(source_tag_names, tag_names)
|
160
160
|
end
|
161
161
|
|
162
162
|
def matches_name?(regexp_to_match)
|
@@ -195,7 +195,7 @@ module Cucumber
|
|
195
195
|
end
|
196
196
|
|
197
197
|
rule step
|
198
|
-
comment space* step_keyword
|
198
|
+
comment space* step_keyword space* name:line_to_eol (eol+ / eof) multi:multiline_arg? white {
|
199
199
|
def at_line?(line)
|
200
200
|
step_keyword.line == line ||
|
201
201
|
(multi.respond_to?(:at_line?) && multi.at_line?(line))
|
@@ -203,9 +203,9 @@ module Cucumber
|
|
203
203
|
|
204
204
|
def build
|
205
205
|
if multi.respond_to?(:build)
|
206
|
-
Ast::Step.new(step_keyword.line, step_keyword.text_value, name.text_value.strip, multi.build)
|
206
|
+
Ast::Step.new(step_keyword.line, step_keyword.text_value.strip, name.text_value.strip, multi.build)
|
207
207
|
else
|
208
|
-
Ast::Step.new(step_keyword.line, step_keyword.text_value, name.text_value.strip)
|
208
|
+
Ast::Step.new(step_keyword.line, step_keyword.text_value.strip, name.text_value.strip)
|
209
209
|
end
|
210
210
|
end
|
211
211
|
}
|
@@ -238,7 +238,7 @@ module Cucumber
|
|
238
238
|
table.at_line?(line)
|
239
239
|
end
|
240
240
|
|
241
|
-
def matches_tags?(
|
241
|
+
def matches_tags?(tag_names)
|
242
242
|
true
|
243
243
|
end
|
244
244
|
|
@@ -273,7 +273,43 @@ module Cucumber
|
|
273
273
|
end
|
274
274
|
|
275
275
|
rule reserved_words_and_symbols
|
276
|
-
(step_keyword
|
276
|
+
(step_keyword) / scenario_keyword / scenario_outline_keyword / table / tag / comment_line
|
277
|
+
end
|
278
|
+
|
279
|
+
rule py_string
|
280
|
+
open_py_string s:(!close_py_string .)* close_py_string {
|
281
|
+
def at_line?(line)
|
282
|
+
line >= open_py_string.line && line <= close_py_string.line
|
283
|
+
end
|
284
|
+
|
285
|
+
def build
|
286
|
+
Ast::PyString.new(open_py_string.line, close_py_string.line, s.text_value, open_py_string.indentation)
|
287
|
+
end
|
288
|
+
}
|
289
|
+
end
|
290
|
+
|
291
|
+
rule open_py_string
|
292
|
+
indent:space* '"""' space* eol {
|
293
|
+
def indentation
|
294
|
+
indent.text_value.length
|
295
|
+
end
|
296
|
+
|
297
|
+
def line
|
298
|
+
indent.line
|
299
|
+
end
|
300
|
+
}
|
301
|
+
end
|
302
|
+
|
303
|
+
rule close_py_string
|
304
|
+
eol space* quotes:'"""' white {
|
305
|
+
def line
|
306
|
+
quotes.line
|
307
|
+
end
|
308
|
+
}
|
309
|
+
end
|
310
|
+
|
311
|
+
rule white
|
312
|
+
(space / eol)*
|
277
313
|
end
|
278
314
|
|
279
315
|
end
|
data/lib/cucumber/parser/i18n.tt
CHANGED
@@ -1,44 +1,34 @@
|
|
1
1
|
module Cucumber
|
2
2
|
module Parser
|
3
3
|
module I18n
|
4
|
-
grammar <%= keywords('grammar_name'
|
5
|
-
include Common
|
4
|
+
grammar <%= keywords('grammar_name')[0] %>
|
6
5
|
include Feature
|
7
6
|
include Table
|
8
|
-
include PyString
|
9
7
|
|
10
8
|
rule feature
|
11
9
|
feature_sub
|
12
10
|
end
|
13
11
|
|
14
12
|
rule background_keyword
|
15
|
-
|
13
|
+
<%= treetop_keywords(background_keywords) %> ':'
|
16
14
|
end
|
17
15
|
|
18
16
|
rule scenario_keyword
|
19
|
-
|
17
|
+
<%= treetop_keywords(scenario_keywords) %> ':'
|
20
18
|
end
|
21
19
|
|
22
20
|
rule scenario_outline_keyword
|
23
|
-
|
21
|
+
<%= treetop_keywords(scenario_outline_keywords) %> ':'
|
24
22
|
end
|
25
23
|
|
26
24
|
rule step_keyword
|
27
|
-
|
28
|
-
(<%= keywords('when') %>) /
|
29
|
-
(<%= keywords('then') %>) /
|
30
|
-
(<%= keywords('and') %>) /
|
31
|
-
(<%= keywords('but') %>)
|
32
|
-
end
|
33
|
-
|
34
|
-
rule keyword_space
|
35
|
-
<%= keywords('space_after_keyword', true) ? 'space+' : 'space*' %>
|
25
|
+
<%= treetop_keywords(step_keywords) %>
|
36
26
|
end
|
37
27
|
|
38
28
|
rule examples_keyword
|
39
|
-
|
29
|
+
<%= treetop_keywords(examples_keywords) %> ':'?
|
40
30
|
end
|
41
31
|
end
|
42
32
|
end
|
43
33
|
end
|
44
|
-
end
|
34
|
+
end
|
@@ -1,7 +1,9 @@
|
|
1
|
+
# TODO: REMOVE ME
|
2
|
+
# Most of this class now lives in Gherkin's i18n.rb
|
1
3
|
module Cucumber
|
2
4
|
module Parser
|
3
5
|
class NaturalLanguage
|
4
|
-
KEYWORD_KEYS = %w{name native
|
6
|
+
KEYWORD_KEYS = %w{name native feature background scenario scenario_outline examples given when then and but}
|
5
7
|
|
6
8
|
class << self
|
7
9
|
def get(step_mother, lang)
|
@@ -11,6 +13,11 @@ module Cucumber
|
|
11
13
|
def languages
|
12
14
|
@languages ||= {}
|
13
15
|
end
|
16
|
+
|
17
|
+
# Used by code generators for other lexer tools like pygments lexer and textmate bundle
|
18
|
+
def all(step_mother=nil)
|
19
|
+
Cucumber::LANGUAGES.keys.sort.map{|lang| get(step_mother, lang)}
|
20
|
+
end
|
14
21
|
end
|
15
22
|
|
16
23
|
def initialize(step_mother, lang)
|
@@ -22,7 +29,7 @@ module Cucumber
|
|
22
29
|
end
|
23
30
|
|
24
31
|
def register_adverbs(step_mother)
|
25
|
-
adverbs = %w{given when then and but}.map{|keyword| @keywords[keyword].split('|').map{|w| w.gsub(
|
32
|
+
adverbs = %w{given when then and but}.map{|keyword| @keywords[keyword].split('|').map{|w| w.gsub(/[\s<']/, '')}}.flatten
|
26
33
|
step_mother.register_adverbs(adverbs) if step_mother
|
27
34
|
end
|
28
35
|
|
@@ -46,35 +53,55 @@ module Cucumber
|
|
46
53
|
feature
|
47
54
|
end
|
48
55
|
|
49
|
-
def keywords(key, raw=false)
|
50
|
-
return @keywords[key] if raw
|
51
|
-
return nil unless @keywords[key]
|
52
|
-
values = @keywords[key].to_s.split('|')
|
53
|
-
values.map{|value| "'#{value}'"}.join(" / ")
|
54
|
-
end
|
55
|
-
|
56
56
|
def incomplete?
|
57
57
|
KEYWORD_KEYS.detect{|key| @keywords[key].nil?}
|
58
58
|
end
|
59
59
|
|
60
|
-
def
|
61
|
-
|
60
|
+
def feature_keywords
|
61
|
+
keywords('feature')
|
62
62
|
end
|
63
63
|
|
64
|
-
def
|
65
|
-
|
64
|
+
def scenario_keywords
|
65
|
+
keywords('scenario')
|
66
66
|
end
|
67
67
|
|
68
|
-
def
|
69
|
-
|
68
|
+
def scenario_outline_keywords
|
69
|
+
keywords('scenario_outline')
|
70
|
+
end
|
71
|
+
|
72
|
+
def background_keywords
|
73
|
+
keywords('background')
|
74
|
+
end
|
75
|
+
|
76
|
+
def examples_keywords
|
77
|
+
keywords('examples')
|
78
|
+
end
|
79
|
+
|
80
|
+
def but_keywords(space=true)
|
81
|
+
keywords('but', space)
|
82
|
+
end
|
83
|
+
|
84
|
+
def and_keywords(space=true)
|
85
|
+
keywords('and', space)
|
70
86
|
end
|
71
87
|
|
72
88
|
def step_keywords
|
73
|
-
%w{given when then and but}.map{|key|
|
89
|
+
%w{given when then and but}.map{|key| keywords(key, true)}.flatten.uniq
|
90
|
+
end
|
91
|
+
|
92
|
+
def keywords(key, space=false)
|
93
|
+
raise "No #{key} in #{@keywords.inspect}" if @keywords[key].nil?
|
94
|
+
@keywords[key].split('|').map{|kw| space ? keyword_space(kw) : kw}
|
95
|
+
end
|
96
|
+
|
97
|
+
private
|
98
|
+
|
99
|
+
def treetop_keywords(keywords)
|
100
|
+
"(" + keywords.map{|k| %{"#{k}"}}.join(" / ") + ")"
|
74
101
|
end
|
75
102
|
|
76
|
-
def
|
77
|
-
|
103
|
+
def keyword_space(val)
|
104
|
+
(val + ' ').sub(/< $/,'')
|
78
105
|
end
|
79
106
|
end
|
80
107
|
end
|
data/lib/cucumber/step_mother.rb
CHANGED
@@ -171,14 +171,13 @@ module Cucumber
|
|
171
171
|
# Then I should not be thirsty
|
172
172
|
# })
|
173
173
|
def invoke_steps(steps_text, natural_language)
|
174
|
-
ored_keywords = natural_language.step_keywords.join("|")
|
175
|
-
after_keyword = natural_language.space_after_keyword ? ' ' : ''
|
174
|
+
ored_keywords = natural_language.step_keywords.map{|kw| Regexp.escape(kw)}.join("|")
|
176
175
|
# TODO Gherkin:
|
177
176
|
# This a bit hacky and fragile. When we move to Gherkin we should replace this entire method body
|
178
177
|
# with a call to the parser - parsing the body of a scenario. We may need to put the parser/policy in the
|
179
178
|
# appropriate state (the same state it's in after parsing a Scenario: line).
|
180
179
|
steps_text.strip.split(/(?=^\s*(?:#{ored_keywords}))/).map { |step| step.strip }.each do |step|
|
181
|
-
output = step.match(/^\s*(#{ored_keywords})
|
180
|
+
output = step.match(/^\s*(#{ored_keywords})([^\n]+)(\n.*)?$/m)
|
182
181
|
|
183
182
|
action, step_name, table_or_string = output[1], output[2], output[3]
|
184
183
|
if table_or_string.to_s.strip =~ /^\|/
|
@@ -1,3 +1,7 @@
|
|
1
|
+
warning = "\nWARNING: #{caller.detect{|l| l =~ /features/}}: cucumber/webrat/element_locator.rb is deprecated and will be removed in Cucumber 0.5.0.\nUse cucumber/web/tableish instead.\n"
|
2
|
+
at_exit do
|
3
|
+
warn warning
|
4
|
+
end
|
1
5
|
require 'webrat'
|
2
6
|
|
3
7
|
module Webrat
|
@@ -28,8 +32,8 @@ module Webrat
|
|
28
32
|
|
29
33
|
def table_from_table #:nodoc:
|
30
34
|
col_count = nil
|
31
|
-
|
32
|
-
cols =
|
35
|
+
element.css('tr').map do |row|
|
36
|
+
cols = row.css('th,td')
|
33
37
|
col_count ||= cols.length
|
34
38
|
cols[0...col_count].map do |col|
|
35
39
|
col.inner_html
|
@@ -38,7 +42,7 @@ module Webrat
|
|
38
42
|
end
|
39
43
|
|
40
44
|
def table_from_dl #:nodoc:
|
41
|
-
|
45
|
+
element.css('dt').map do |dt|
|
42
46
|
next_node = dt.next_sibling
|
43
47
|
while next_node.name != 'dd'
|
44
48
|
next_node = next_node.next_sibling
|
@@ -48,7 +52,7 @@ module Webrat
|
|
48
52
|
end
|
49
53
|
|
50
54
|
def table_from_list #:nodoc:
|
51
|
-
|
55
|
+
element.css('li').map do |li|
|
52
56
|
[li.inner_html]
|
53
57
|
end
|
54
58
|
end
|
@@ -63,7 +67,7 @@ module Webrat
|
|
63
67
|
end
|
64
68
|
|
65
69
|
def table_element
|
66
|
-
|
70
|
+
@dom.css(@value)[0]
|
67
71
|
end
|
68
72
|
|
69
73
|
def error_message
|
@@ -26,13 +26,26 @@ module Cucumber
|
|
26
26
|
it "should not raise an error when visiting a blank feature name" do
|
27
27
|
lambda { @formatter.feature_name("") }.should_not raise_error
|
28
28
|
end
|
29
|
-
|
29
|
+
|
30
30
|
describe "given a single feature" do
|
31
31
|
before(:each) do
|
32
32
|
run_defined_feature
|
33
33
|
@doc = Nokogiri.HTML(@out.string)
|
34
34
|
end
|
35
|
-
|
35
|
+
|
36
|
+
describe "basic feature" do
|
37
|
+
define_feature <<-FEATURE
|
38
|
+
Feature: Bananas
|
39
|
+
In order to find my inner monkey
|
40
|
+
As a human
|
41
|
+
I must eat bananas
|
42
|
+
FEATURE
|
43
|
+
|
44
|
+
it "should output a main container div" do
|
45
|
+
@out.string.should =~ /\<div class="cucumber"\>/
|
46
|
+
end
|
47
|
+
end
|
48
|
+
|
36
49
|
describe "with a comment" do
|
37
50
|
define_feature <<-FEATURE
|
38
51
|
# Healthy
|
@@ -9,7 +9,7 @@ Feature: Addition
|
|
9
9
|
When I press add
|
10
10
|
Then the result should be 120 on the screen
|
11
11
|
|
12
|
-
|
12
|
+
Examples:
|
13
13
|
| input_1 | input_2 | button | output |
|
14
14
|
| 20 | 30 | add | 50 |
|
15
15
|
| 2 | 5 | add | 7 |
|
@@ -22,6 +22,6 @@ Feature: Addition
|
|
22
22
|
When I press add
|
23
23
|
Then the result should be 50 on the screen
|
24
24
|
|
25
|
-
|
25
|
+
Examples:
|
26
26
|
| input_1 | input_2 | input_3 | button | output |
|
27
27
|
| 1 | 2 | 3 | add | 6 |
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cucumber
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.4.
|
4
|
+
version: 0.4.5.rc1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- "Aslak Helles\xC3\xB8y"
|
@@ -9,7 +9,7 @@ autorequire:
|
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
|
12
|
-
date: 2009-
|
12
|
+
date: 2009-12-07 00:00:00 +01:00
|
13
13
|
default_executable: cucumber
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
@@ -70,7 +70,7 @@ dependencies:
|
|
70
70
|
requirements:
|
71
71
|
- - "="
|
72
72
|
- !ruby/object:Gem::Version
|
73
|
-
version: 1.
|
73
|
+
version: 1.4.0
|
74
74
|
version:
|
75
75
|
- !ruby/object:Gem::Dependency
|
76
76
|
name: prawn
|
@@ -114,9 +114,9 @@ extra_rdoc_files:
|
|
114
114
|
files:
|
115
115
|
- .gitattributes
|
116
116
|
- .gitignore
|
117
|
+
- Caliper.yml
|
117
118
|
- History.txt
|
118
119
|
- LICENSE
|
119
|
-
- Manifest.txt
|
120
120
|
- README.rdoc
|
121
121
|
- Rakefile
|
122
122
|
- VERSION.yml
|
@@ -182,6 +182,7 @@ files:
|
|
182
182
|
- examples/i18n/fi/lib/laskin.rb
|
183
183
|
- examples/i18n/fr/Rakefile
|
184
184
|
- examples/i18n/fr/features/addition.feature
|
185
|
+
- examples/i18n/fr/features/addition2.feature
|
185
186
|
- examples/i18n/fr/features/step_definitions/calculatrice_steps.rb
|
186
187
|
- examples/i18n/fr/lib/calculatrice.rb
|
187
188
|
- examples/i18n/he/Rakefile
|
@@ -363,6 +364,12 @@ files:
|
|
363
364
|
- examples/sinatra/views/layout.erb
|
364
365
|
- examples/steps_library/features/step_definitions/steps_lib1.rb
|
365
366
|
- examples/steps_library/features/step_definitions/steps_lib2.rb
|
367
|
+
- examples/tcl/README.textile
|
368
|
+
- examples/tcl/Rakefile
|
369
|
+
- examples/tcl/features/fibonnacci.feature
|
370
|
+
- examples/tcl/features/step_definitions/fib_steps.rb
|
371
|
+
- examples/tcl/features/support/env.rb
|
372
|
+
- examples/tcl/src/fib.tcl
|
366
373
|
- examples/test_unit/Rakefile
|
367
374
|
- examples/test_unit/features/step_definitions/test_unit_steps.rb
|
368
375
|
- examples/test_unit/features/test_unit.feature
|
@@ -508,6 +515,7 @@ files:
|
|
508
515
|
- lib/cucumber/formatter/debug.rb
|
509
516
|
- lib/cucumber/formatter/duration.rb
|
510
517
|
- lib/cucumber/formatter/html.rb
|
518
|
+
- lib/cucumber/formatter/io.rb
|
511
519
|
- lib/cucumber/formatter/junit.rb
|
512
520
|
- lib/cucumber/formatter/ordered_xml_markup.rb
|
513
521
|
- lib/cucumber/formatter/pdf.rb
|
@@ -539,11 +547,6 @@ files:
|
|
539
547
|
- lib/cucumber/py_support/py_dsl.py
|
540
548
|
- lib/cucumber/py_support/py_language.py
|
541
549
|
- lib/cucumber/py_support/py_language.rb
|
542
|
-
- lib/cucumber/rails/action_controller.rb
|
543
|
-
- lib/cucumber/rails/active_record.rb
|
544
|
-
- lib/cucumber/rails/rspec.rb
|
545
|
-
- lib/cucumber/rails/test_unit.rb
|
546
|
-
- lib/cucumber/rails/world.rb
|
547
550
|
- lib/cucumber/rake/task.rb
|
548
551
|
- lib/cucumber/rb_support/rb_dsl.rb
|
549
552
|
- lib/cucumber/rb_support/rb_hook.rb
|
@@ -566,20 +569,6 @@ files:
|
|
566
569
|
- lib/cucumber/wire_support/wire_packet.rb
|
567
570
|
- lib/cucumber/wire_support/wire_protocol.rb
|
568
571
|
- lib/cucumber/wire_support/wire_step_definition.rb
|
569
|
-
- rails_generators/cucumber/USAGE
|
570
|
-
- rails_generators/cucumber/cucumber_generator.rb
|
571
|
-
- rails_generators/cucumber/templates/cucumber
|
572
|
-
- rails_generators/cucumber/templates/cucumber.rake
|
573
|
-
- rails_generators/cucumber/templates/cucumber_environment.rb
|
574
|
-
- rails_generators/cucumber/templates/env.rb
|
575
|
-
- rails_generators/cucumber/templates/paths.rb
|
576
|
-
- rails_generators/cucumber/templates/spork_env.rb
|
577
|
-
- rails_generators/cucumber/templates/version_check.rb
|
578
|
-
- rails_generators/cucumber/templates/webrat_steps.rb
|
579
|
-
- rails_generators/feature/USAGE
|
580
|
-
- rails_generators/feature/feature_generator.rb
|
581
|
-
- rails_generators/feature/templates/feature.erb
|
582
|
-
- rails_generators/feature/templates/steps.erb
|
583
572
|
- spec/cucumber/ast/background_spec.rb
|
584
573
|
- spec/cucumber/ast/feature_element_spec.rb
|
585
574
|
- spec/cucumber/ast/feature_factory.rb
|
@@ -643,7 +632,7 @@ post_install_message: |+
|
|
643
632
|
|
644
633
|
(::) U P G R A D I N G (::)
|
645
634
|
|
646
|
-
Thank you for installing cucumber-0.4.
|
635
|
+
Thank you for installing cucumber-0.4.5.
|
647
636
|
Please be sure to read http://wiki.github.com/aslakhellesoy/cucumber/upgrading
|
648
637
|
for important information about this release. Happy cuking!
|
649
638
|
|
@@ -661,9 +650,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
661
650
|
version:
|
662
651
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
663
652
|
requirements:
|
664
|
-
- - "
|
653
|
+
- - ">"
|
665
654
|
- !ruby/object:Gem::Version
|
666
|
-
version:
|
655
|
+
version: 1.3.1
|
667
656
|
version:
|
668
657
|
requirements: []
|
669
658
|
|
@@ -804,6 +793,8 @@ test_files:
|
|
804
793
|
- examples/sinatra/features/support/env.rb
|
805
794
|
- examples/steps_library/features/step_definitions/steps_lib1.rb
|
806
795
|
- examples/steps_library/features/step_definitions/steps_lib2.rb
|
796
|
+
- examples/tcl/features/step_definitions/fib_steps.rb
|
797
|
+
- examples/tcl/features/support/env.rb
|
807
798
|
- examples/test_unit/features/step_definitions/test_unit_steps.rb
|
808
799
|
- examples/tickets/features/229/tagged_hooks.rb
|
809
800
|
- examples/tickets/features/270/back.steps.rb
|