cucumber 0.3.0 → 0.3.1
Sign up to get free protection for your applications and to get access to all the features.
- data/History.txt +26 -1
- data/Manifest.txt +20 -1
- data/config/hoe.rb +5 -4
- data/examples/i18n/hu/Rakefile +6 -0
- data/examples/i18n/hu/features/addition.feature +16 -0
- data/examples/i18n/hu/features/division.feature +9 -0
- data/examples/i18n/hu/features/step_definitons/calculator_steps.rb +25 -0
- data/examples/i18n/hu/lib/calculator.rb +14 -0
- data/examples/i18n/lv/Rakefile +6 -0
- data/examples/i18n/lv/features/addition.feature +16 -0
- data/examples/i18n/lv/features/division.feature +9 -0
- data/examples/i18n/lv/features/step_definitons/calculator_steps.rb +24 -0
- data/examples/i18n/lv/lib/calculator.rb +14 -0
- data/examples/self_test/features/background/failing_background.feature +1 -0
- data/examples/self_test/features/multiline_name.feature +27 -0
- data/examples/self_test/features/search_sample.feature +22 -0
- data/examples/self_test/features/step_definitions/sample_steps.rb +3 -2
- data/examples/tickets/Rakefile +3 -3
- data/examples/tickets/features/236.feature +9 -9
- data/examples/tickets/features/272/hooks.feature +26 -0
- data/examples/tickets/features/272/hooks_steps.rb +53 -0
- data/examples/tickets/features/301/filter_background_tagged_hooks.feature +6 -0
- data/examples/tickets/features/301/filter_background_tagged_hooks_steps.rb +12 -0
- data/examples/tickets/features/306/only_background.feature +4 -0
- data/features/background.feature +2 -1
- data/features/cucumber_cli.feature +88 -12
- data/features/cucumber_cli_outlines.feature +32 -0
- data/features/custom_formatter.feature +2 -2
- data/features/multiline_names.feature +43 -0
- data/features/report_called_undefined_steps.feature +1 -1
- data/features/usage.feature +13 -4
- data/lib/cucumber/ast/background.rb +10 -13
- data/lib/cucumber/ast/feature.rb +5 -0
- data/lib/cucumber/ast/feature_element.rb +23 -12
- data/lib/cucumber/ast/outline_table.rb +10 -0
- data/lib/cucumber/ast/py_string.rb +5 -1
- data/lib/cucumber/ast/scenario.rb +17 -6
- data/lib/cucumber/ast/scenario_outline.rb +1 -6
- data/lib/cucumber/ast/step.rb +6 -3
- data/lib/cucumber/ast/step_collection.rb +9 -1
- data/lib/cucumber/ast/table.rb +8 -0
- data/lib/cucumber/ast/visitor.rb +2 -2
- data/lib/cucumber/cli/configuration.rb +15 -14
- data/lib/cucumber/formatter/console.rb +1 -1
- data/lib/cucumber/formatter/html.rb +1 -1
- data/lib/cucumber/formatter/pretty.rb +7 -8
- data/lib/cucumber/languages.yml +30 -0
- data/lib/cucumber/parser/feature.rb +214 -14
- data/lib/cucumber/parser/feature.tt +44 -14
- data/lib/cucumber/parser/treetop_ext.rb +3 -3
- data/lib/cucumber/rails/world.rb +6 -0
- data/lib/cucumber/step_mother.rb +2 -1
- data/lib/cucumber/version.rb +1 -1
- data/lib/cucumber/world.rb +2 -2
- data/rails_generators/cucumber/templates/paths.rb +11 -13
- data/rails_generators/feature/feature_generator.rb +1 -1
- data/spec/cucumber/ast/feature_element_spec.rb +40 -0
- data/spec/cucumber/ast/py_string_spec.rb +4 -0
- data/spec/cucumber/ast/table_spec.rb +20 -4
- data/spec/cucumber/ast/visitor_spec.rb +27 -0
- data/spec/cucumber/cli/configuration_spec.rb +4 -13
- data/spec/cucumber/cli/main_spec.rb +55 -153
- data/spec/cucumber/parser/feature_parser_spec.rb +79 -0
- data/spec/cucumber/step_mother_spec.rb +12 -5
- metadata +22 -13
- data/spec/cucumber/formatters/profile_formatter_spec.rb +0 -198
data/History.txt
CHANGED
@@ -1,4 +1,29 @@
|
|
1
|
-
== 0.3.
|
1
|
+
== 0.3.1 2009-04-26
|
2
|
+
|
3
|
+
This release has several minor bug fixes and new features. With the addition of Latvian and Hungarian Cucumber
|
4
|
+
now supports 32(!!) languages.
|
5
|
+
|
6
|
+
=== New features
|
7
|
+
* Support multiline names for Scenarios, Scenario Outlines, Backgrounds, Examples (#231 Joseph Wilk)
|
8
|
+
* Added #headers to Cucumber::Ast::Table (Ben Mabey)
|
9
|
+
* New translation for Latvian (Vitauts Stočka)
|
10
|
+
* New translation for Hungarian (#287 Bence Golda)
|
11
|
+
* Pick up failure on after hook (#272 Aslak Hellesøy)
|
12
|
+
|
13
|
+
=== Bugfixes
|
14
|
+
* Pretty formatter not colouring Examples tables correctly (#304 Aslak Hellesøy)
|
15
|
+
* Problem using --scenario and Scenario Outline (#298 Aslak Hellesøy)
|
16
|
+
* Tag Hook gets executed always there is a background (#301 Aslak Hellesøy)
|
17
|
+
* Feature which only has a Background with steps causes an exception (#306 Aslak Hellesøy)
|
18
|
+
* Gem no longer depends on Hoe (Aslak Hellesøy)
|
19
|
+
* Span html tags appear on HTML results with 0.3.0 (#299 Aslak Hellesøy)
|
20
|
+
* Fixed incorrect colours in pretty formatter's table headers for outline tables (Aslak Hellesøy)
|
21
|
+
* Exceptions from steps called within hooks are now reraised. (#294 Ben Mabey)
|
22
|
+
|
23
|
+
=== Removed/changed features
|
24
|
+
* --scenario handle has been removed and replaced with --name which supports partial matches, regexp special characters, running named backgrounds (#295 Joseph Wilk)
|
25
|
+
|
26
|
+
== 0.3.0 2009-04-14
|
2
27
|
|
3
28
|
This release has some minor changes to the APIs, but big enough that a new major release is in order.
|
4
29
|
The biggest change is the new semantics of the #World method. Previously you would call this method
|
data/Manifest.txt
CHANGED
@@ -67,6 +67,11 @@ examples/i18n/fr/Rakefile
|
|
67
67
|
examples/i18n/fr/features/addition.feature
|
68
68
|
examples/i18n/fr/features/step_definitions/calculatrice_steps.rb
|
69
69
|
examples/i18n/fr/lib/calculatrice.rb
|
70
|
+
examples/i18n/hu/Rakefile
|
71
|
+
examples/i18n/hu/features/addition.feature
|
72
|
+
examples/i18n/hu/features/division.feature
|
73
|
+
examples/i18n/hu/features/step_definitons/calculator_steps.rb
|
74
|
+
examples/i18n/hu/lib/calculator.rb
|
70
75
|
examples/i18n/id/Rakefile
|
71
76
|
examples/i18n/id/features/addition.feature
|
72
77
|
examples/i18n/id/features/division.feature
|
@@ -91,6 +96,11 @@ examples/i18n/lt/features/addition.feature
|
|
91
96
|
examples/i18n/lt/features/division.feature
|
92
97
|
examples/i18n/lt/features/step_definitons/calculator_steps.rb
|
93
98
|
examples/i18n/lt/lib/calculator.rb
|
99
|
+
examples/i18n/lv/Rakefile
|
100
|
+
examples/i18n/lv/features/addition.feature
|
101
|
+
examples/i18n/lv/features/division.feature
|
102
|
+
examples/i18n/lv/features/step_definitons/calculator_steps.rb
|
103
|
+
examples/i18n/lv/lib/calculator.rb
|
94
104
|
examples/i18n/no/Rakefile
|
95
105
|
examples/i18n/no/features/step_definitons/kalkulator_steps.rb
|
96
106
|
examples/i18n/no/features/summering.feature
|
@@ -159,8 +169,10 @@ examples/self_test/features/background/scenario_outline_passing_background.featu
|
|
159
169
|
examples/self_test/features/call_undefined_step_from_step_def.feature
|
160
170
|
examples/self_test/features/failing_expectation.feature
|
161
171
|
examples/self_test/features/lots_of_undefined.feature
|
172
|
+
examples/self_test/features/multiline_name.feature
|
162
173
|
examples/self_test/features/outline_sample.feature
|
163
174
|
examples/self_test/features/sample.feature
|
175
|
+
examples/self_test/features/search_sample.feature
|
164
176
|
examples/self_test/features/step_definitions/sample_steps.rb
|
165
177
|
examples/self_test/features/support/env.rb
|
166
178
|
examples/self_test/features/support/tag_count_formatter.rb
|
@@ -190,9 +202,14 @@ examples/tickets/features/246.feature
|
|
190
202
|
examples/tickets/features/248.feature
|
191
203
|
examples/tickets/features/270/back.feature
|
192
204
|
examples/tickets/features/270/back.steps.rb
|
205
|
+
examples/tickets/features/272/hooks.feature
|
206
|
+
examples/tickets/features/272/hooks_steps.rb
|
193
207
|
examples/tickets/features/279/py_string_indent.feature
|
194
208
|
examples/tickets/features/279/py_string_indent.steps.rb
|
195
209
|
examples/tickets/features/279/wrong.feature_
|
210
|
+
examples/tickets/features/301/filter_background_tagged_hooks.feature
|
211
|
+
examples/tickets/features/301/filter_background_tagged_hooks_steps.rb
|
212
|
+
examples/tickets/features/306/only_background.feature
|
196
213
|
examples/tickets/features/lib/eatting_machine.rb
|
197
214
|
examples/tickets/features/lib/pantry.rb
|
198
215
|
examples/tickets/features/scenario_outline.feature
|
@@ -211,6 +228,7 @@ features/cucumber_cli.feature
|
|
211
228
|
features/cucumber_cli_diff_disabled.feature
|
212
229
|
features/cucumber_cli_outlines.feature
|
213
230
|
features/custom_formatter.feature
|
231
|
+
features/multiline_names.feature
|
214
232
|
features/rake_task.feature
|
215
233
|
features/report_called_undefined_steps.feature
|
216
234
|
features/snippet.feature
|
@@ -301,6 +319,7 @@ rails_generators/feature/feature_generator.rb
|
|
301
319
|
rails_generators/feature/templates/feature.erb
|
302
320
|
rails_generators/feature/templates/steps.erb
|
303
321
|
spec/cucumber/ast/background_spec.rb
|
322
|
+
spec/cucumber/ast/feature_element_spec.rb
|
304
323
|
spec/cucumber/ast/feature_factory.rb
|
305
324
|
spec/cucumber/ast/feature_spec.rb
|
306
325
|
spec/cucumber/ast/py_string_spec.rb
|
@@ -309,6 +328,7 @@ spec/cucumber/ast/scenario_spec.rb
|
|
309
328
|
spec/cucumber/ast/step_collection_spec.rb
|
310
329
|
spec/cucumber/ast/step_spec.rb
|
311
330
|
spec/cucumber/ast/table_spec.rb
|
331
|
+
spec/cucumber/ast/visitor_spec.rb
|
312
332
|
spec/cucumber/broadcaster_spec.rb
|
313
333
|
spec/cucumber/cli/configuration_spec.rb
|
314
334
|
spec/cucumber/cli/main_spec.rb
|
@@ -321,7 +341,6 @@ spec/cucumber/formatter/html/cucumber.js
|
|
321
341
|
spec/cucumber/formatter/html/index.html
|
322
342
|
spec/cucumber/formatter/html/jquery-1.3.min.js
|
323
343
|
spec/cucumber/formatter/html/jquery.uitableedit.js
|
324
|
-
spec/cucumber/formatters/profile_formatter_spec.rb
|
325
344
|
spec/cucumber/parser/feature_parser_spec.rb
|
326
345
|
spec/cucumber/parser/table_parser_spec.rb
|
327
346
|
spec/cucumber/rails/stubs/mini_rails.rb
|
data/config/hoe.rb
CHANGED
@@ -38,11 +38,12 @@ RDOC_OPTS = ['--quiet', '--title', 'Cucumber documentation',
|
|
38
38
|
"--main", "README.textile",
|
39
39
|
"--inline-source"]
|
40
40
|
|
41
|
+
# Remove Hoe dependency
|
41
42
|
class Hoe
|
42
|
-
def
|
43
|
-
@
|
44
|
-
@
|
45
|
-
end
|
43
|
+
def extra_dev_deps
|
44
|
+
@extra_dev_deps.reject! { |dep| dep[0] == "hoe" }
|
45
|
+
@extra_dev_deps
|
46
|
+
end
|
46
47
|
end
|
47
48
|
|
48
49
|
# Generate all the Rake tasks
|
@@ -0,0 +1,16 @@
|
|
1
|
+
Jellemző: Összeadás
|
2
|
+
Azért, hogy elkerüljem a buta hibákat
|
3
|
+
amit diszkalkúliásként elkövethetek,
|
4
|
+
két szám összegét szeretném kiszámoltatni.
|
5
|
+
|
6
|
+
Forgatókönyv vázlat: Két szám összeadása
|
7
|
+
Ha beütök a számológépbe egy <be_1>-est
|
8
|
+
És beütök a számológépbe egy <be_2>-est
|
9
|
+
Majd megnyomom az <gomb> gombot
|
10
|
+
Akkor eredményül <ki>-t kell kapnom
|
11
|
+
|
12
|
+
Példák:
|
13
|
+
| be_1 | be_2 | gomb | ki |
|
14
|
+
| 20 | 30 | add | 50 |
|
15
|
+
| 2 | 5 | add | 7 |
|
16
|
+
| 0 | 40 | add | 40 |
|
@@ -0,0 +1,9 @@
|
|
1
|
+
Jellemző: Osztás
|
2
|
+
Azért, hogy elkerüljem a buta hibákat
|
3
|
+
a számológépeknek tudniuk kell osztani.
|
4
|
+
|
5
|
+
Forgatókönyv: Egyszerű számok
|
6
|
+
Ha beütök a számológépbe egy 3-ast
|
7
|
+
És beütök a számológépbe egy 2-est
|
8
|
+
Majd megnyomom a divide gombot
|
9
|
+
Akkor eredményül 1.5-öt kell kapnom
|
@@ -0,0 +1,25 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
require 'spec/expectations'
|
3
|
+
$:.unshift(File.dirname(__FILE__) + '/../../lib') # This line is not needed in your own project
|
4
|
+
require 'cucumber/formatter/unicode'
|
5
|
+
require 'calculator'
|
6
|
+
|
7
|
+
Before do
|
8
|
+
@calc = Calculator.new
|
9
|
+
end
|
10
|
+
|
11
|
+
After do
|
12
|
+
end
|
13
|
+
|
14
|
+
Ha /^beütök a számológépbe egy (\d+)\-(?:es|as|ös|ás)t$/ do |n|
|
15
|
+
@calc.push n.to_i
|
16
|
+
end
|
17
|
+
|
18
|
+
Majd /^megnyomom az? (\w+) gombot$/ do |op|
|
19
|
+
@result = @calc.send op
|
20
|
+
end
|
21
|
+
|
22
|
+
Akkor /^eredményül (.*)\-(?:e|a|ö|á|)t kell kapnom$/ do |result|
|
23
|
+
@result.should == result.to_f
|
24
|
+
end
|
25
|
+
|
@@ -0,0 +1,16 @@
|
|
1
|
+
Funkcionalitāte: Saskaitīšana
|
2
|
+
Lai izvairītos no muļķīgām kļūdām
|
3
|
+
Kā matemātikas idiots
|
4
|
+
Es vēlos uzzināt divu skaitļu summu
|
5
|
+
|
6
|
+
Scenārijs pēc parauga: Saskaitīt divus skaitļus
|
7
|
+
Kad esmu ievadījis kalkulatorā <skaitlis_1>
|
8
|
+
Un esmu ievadījis kalkulatorā <skaitlis_2>
|
9
|
+
Ja nospiežu pogu <poga>
|
10
|
+
Tad rezultātam uz ekrāna ir jābūt <rezultāts>
|
11
|
+
|
12
|
+
Paraugs:
|
13
|
+
| skaitlis_1 | skaitlis_2 | poga | rezultāts |
|
14
|
+
| 20 | 30 | add | 50 |
|
15
|
+
| 2 | 5 | add | 7 |
|
16
|
+
| 0 | 40 | add | 40 |
|
@@ -0,0 +1,9 @@
|
|
1
|
+
Funkcionalitāte: Dalīšana
|
2
|
+
Lai izvairītos no muļķīgām kļūdām
|
3
|
+
Kasieriem ir jāprot aprēķināt daļas
|
4
|
+
|
5
|
+
Scenārijs: Veseli skaitļi
|
6
|
+
Kad esmu ievadījis kalkulatorā 3
|
7
|
+
Un esmu ievadījis kalkulatorā 2
|
8
|
+
Ja nospiežu pogu divide
|
9
|
+
Tad rezultātam uz ekrāna ir jābūt 1.5
|
@@ -0,0 +1,24 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
require 'spec/expectations'
|
3
|
+
$:.unshift(File.dirname(__FILE__) + '/../../lib') # This line is not needed in your own project
|
4
|
+
require 'cucumber/formatter/unicode'
|
5
|
+
require 'calculator'
|
6
|
+
|
7
|
+
Before do
|
8
|
+
@calc = Calculator.new
|
9
|
+
end
|
10
|
+
|
11
|
+
After do
|
12
|
+
end
|
13
|
+
|
14
|
+
Given /esmu ievadījis kalkulatorā (\d+)/ do |n|
|
15
|
+
@calc.push n.to_i
|
16
|
+
end
|
17
|
+
|
18
|
+
When /nospiežu pogu (\w+)/ do |op|
|
19
|
+
@result = @calc.send op
|
20
|
+
end
|
21
|
+
|
22
|
+
Then /rezultātam uz ekrāna ir jābūt (.*)/ do |result|
|
23
|
+
@result.should == result.to_f
|
24
|
+
end
|
@@ -0,0 +1,27 @@
|
|
1
|
+
Feature: multiline
|
2
|
+
|
3
|
+
Background: I'm a multiline name
|
4
|
+
which goes on and on and on for three lines
|
5
|
+
yawn
|
6
|
+
Given passing without a table
|
7
|
+
|
8
|
+
Scenario: I'm a multiline name
|
9
|
+
which goes on and on and on for three lines
|
10
|
+
yawn
|
11
|
+
Given passing without a table
|
12
|
+
|
13
|
+
Scenario Outline: I'm a multiline name
|
14
|
+
which goes on and on and on for three lines
|
15
|
+
yawn
|
16
|
+
Given <state> without a table
|
17
|
+
Examples:
|
18
|
+
| state |
|
19
|
+
|passing|
|
20
|
+
|
21
|
+
Scenario Outline: name
|
22
|
+
Given <state> without a table
|
23
|
+
Examples: I'm a multiline name
|
24
|
+
which goes on and on and on for three lines
|
25
|
+
yawn
|
26
|
+
| state |
|
27
|
+
|passing|
|
@@ -0,0 +1,22 @@
|
|
1
|
+
Feature: search examples
|
2
|
+
|
3
|
+
Background: Hantu Pisang background match
|
4
|
+
Given passing without a table
|
5
|
+
|
6
|
+
Scenario: should match Hantu Pisang
|
7
|
+
Given passing without a table
|
8
|
+
|
9
|
+
Scenario: Ignore me
|
10
|
+
Given failing without a table
|
11
|
+
|
12
|
+
Scenario Outline: Ignore me
|
13
|
+
Given <state> without a table
|
14
|
+
Examples:
|
15
|
+
|state|
|
16
|
+
|failing|
|
17
|
+
|
18
|
+
Scenario Outline: Hantu Pisang match
|
19
|
+
Given <state> without a table
|
20
|
+
Examples:
|
21
|
+
|state|
|
22
|
+
|passing|
|
@@ -69,12 +69,13 @@ end
|
|
69
69
|
Given /^another unused$/ do
|
70
70
|
end
|
71
71
|
|
72
|
-
after_file = File.dirname(__FILE__) + '/../../tmp/after.txt'
|
72
|
+
after_file = File.expand_path(File.dirname(__FILE__) + '/../../tmp/after.txt')
|
73
73
|
|
74
|
-
Before
|
74
|
+
Before do
|
75
75
|
FileUtils.rm(after_file) if File.exist?(after_file)
|
76
76
|
end
|
77
77
|
|
78
78
|
After('@after_file') do
|
79
|
+
FileUtils.mkdir_p(File.dirname(after_file))
|
79
80
|
FileUtils.touch(after_file)
|
80
81
|
end
|
data/examples/tickets/Rakefile
CHANGED
@@ -2,15 +2,15 @@ $:.unshift(File.dirname(__FILE__) + '/../../lib')
|
|
2
2
|
require 'cucumber/rake/task'
|
3
3
|
|
4
4
|
Cucumber::Rake::Task.new(:pretty) do |t|
|
5
|
-
t.cucumber_opts = "--format pretty -q"
|
5
|
+
t.cucumber_opts = "--tags ~@intentional_failure --format pretty -q"
|
6
6
|
end
|
7
7
|
|
8
8
|
Cucumber::Rake::Task.new(:html) do |t|
|
9
|
-
t.cucumber_opts = "--format html --out features.html"
|
9
|
+
t.cucumber_opts = "--tags ~@intentional_failure --format html --out features.html"
|
10
10
|
end
|
11
11
|
|
12
12
|
Cucumber::Rake::Task.new(:progress) do |t|
|
13
|
-
t.cucumber_opts = "--format progress -i -n"
|
13
|
+
t.cucumber_opts = "--tags ~@intentional_failure --format progress -i -n"
|
14
14
|
end
|
15
15
|
|
16
16
|
task :default => [:pretty, :html, :progress]
|
@@ -1,13 +1,13 @@
|
|
1
1
|
Feature: Unsubstituted argument placeholder
|
2
2
|
|
3
3
|
Scenario Outline: See Annual Leave Details (as Management & Human Resource)
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
4
|
+
Given the following users exist in the system
|
5
|
+
| name | email | role_assignments | group_memberships |
|
6
|
+
| Jane | jane@fmail.com | <role> | Sales (manager) |
|
7
|
+
| Max | max@fmail.com | | Sales (member) |
|
8
|
+
| Carol | carol@fmail.com | | Sales (member) |
|
9
|
+
| Cat | cat@fmail.com | | |
|
10
10
|
|
11
|
-
|
12
|
-
|
13
|
-
|
11
|
+
Examples:
|
12
|
+
| role |
|
13
|
+
| HUMAN RESOURCE |
|
@@ -0,0 +1,26 @@
|
|
1
|
+
@intentional_failure
|
2
|
+
Feature: Hooks
|
3
|
+
In order to integrate with my complex environment
|
4
|
+
I need to check scenario status in an After block
|
5
|
+
|
6
|
+
@272_failed
|
7
|
+
Scenario: Failed
|
8
|
+
Given I fail
|
9
|
+
|
10
|
+
@272_undefined
|
11
|
+
Scenario: Undefined
|
12
|
+
Given I am undefined
|
13
|
+
|
14
|
+
@272_passed
|
15
|
+
Scenario: Passed
|
16
|
+
Given I pass
|
17
|
+
|
18
|
+
@272_outline
|
19
|
+
Scenario Outline: Should work too
|
20
|
+
Given <something>
|
21
|
+
|
22
|
+
Examples:
|
23
|
+
| something |
|
24
|
+
| I fail |
|
25
|
+
| I am undefined |
|
26
|
+
| I pass |
|
@@ -0,0 +1,53 @@
|
|
1
|
+
require 'spec/expectations'
|
2
|
+
|
3
|
+
Given /^I fail$/ do
|
4
|
+
raise "BOOM (this is expected)"
|
5
|
+
end
|
6
|
+
|
7
|
+
Given /^I pass$/ do
|
8
|
+
end
|
9
|
+
|
10
|
+
module HookChecks
|
11
|
+
def check_failed(scenario)
|
12
|
+
scenario.should be_failed
|
13
|
+
scenario.should_not be_passed
|
14
|
+
scenario.exception.message.should == "BOOM (this is expected)"
|
15
|
+
end
|
16
|
+
|
17
|
+
def check_undefined(scenario)
|
18
|
+
scenario.should_not be_failed
|
19
|
+
scenario.should_not be_passed
|
20
|
+
end
|
21
|
+
|
22
|
+
def check_passed(scenario)
|
23
|
+
scenario.should_not be_failed
|
24
|
+
scenario.should be_passed
|
25
|
+
end
|
26
|
+
end
|
27
|
+
|
28
|
+
World(HookChecks)
|
29
|
+
|
30
|
+
After('@272_failed') do |scenario|
|
31
|
+
check_failed(scenario)
|
32
|
+
end
|
33
|
+
|
34
|
+
After('@272_undefined') do |scenario|
|
35
|
+
check_undefined(scenario)
|
36
|
+
end
|
37
|
+
|
38
|
+
After('@272_passed') do |scenario|
|
39
|
+
check_passed(scenario)
|
40
|
+
end
|
41
|
+
|
42
|
+
counter = 0
|
43
|
+
After('@272_outline') do |scenario|
|
44
|
+
case(counter)
|
45
|
+
when 0
|
46
|
+
check_failed(scenario)
|
47
|
+
when 1
|
48
|
+
check_undefined(scenario)
|
49
|
+
when 2
|
50
|
+
check_passed(scenario)
|
51
|
+
end
|
52
|
+
counter +=1
|
53
|
+
end
|