Refactor producer invocation in cucumber features:

Use "When I successfully execute" instead of "When I execute", and
assert that exit status code was successful in this new step.
This commit is contained in:
Thibault Jouan 2013-08-25 07:50:52 +00:00
parent 0a9f7e38af
commit 33a2b9de5a
9 changed files with 14 additions and 17 deletions

View File

@ -7,6 +7,5 @@ Feature: `echo' task action
echo 'hello' echo 'hello'
end end
""" """
When I execute the recipe When I successfully execute the recipe
Then the exit status must be 0
And the output must contain exactly "hello\n" And the output must contain exactly "hello\n"

View File

@ -22,7 +22,7 @@ Feature: sh task action
sh '\echo from remote' sh '\echo from remote'
end end
""" """
When I execute the recipe When I successfully execute the recipe
Then the output must contain "from remote" Then the output must contain "from remote"
Scenario: aborts on failed command execution Scenario: aborts on failed command execution

View File

@ -5,6 +5,5 @@ Feature: recipe evaluation
""" """
puts 'hello from recipe' puts 'hello from recipe'
""" """
When I execute the recipe When I successfully execute the recipe
Then the exit status must be 0
And the output must contain exactly "hello from recipe\n" And the output must contain exactly "hello from recipe\n"

View File

@ -11,6 +11,5 @@ Feature: `source' recipe keyword
""" """
puts 'sourced recipe' puts 'sourced recipe'
""" """
When I execute the recipe When I successfully execute the recipe
Then the exit status must be 0
And the output must contain "sourced recipe" And the output must contain "sourced recipe"

View File

@ -7,6 +7,5 @@ Feature: `target' recipe keyword
puts env.target puts env.target
""" """
When I execute the recipe When I successfully execute the recipe
Then the exit status must be 0
And the output must contain exactly "some_host.example\n" And the output must contain exactly "some_host.example\n"

View File

@ -5,3 +5,8 @@ end
When(/^I execute the recipe$/) do When(/^I execute the recipe$/) do
run_simple('producer recipe.rb', false) run_simple('producer recipe.rb', false)
end end
When(/^I successfully execute the recipe$/) do
step 'I execute the recipe'
assert_exit_status(0)
end

View File

@ -9,6 +9,5 @@ Feature: `condition' task keyword
echo 'evaluated' echo 'evaluated'
end end
""" """
When I execute the recipe When I successfully execute the recipe
Then the exit status must be 0
And the output must not contain "evaluated" And the output must not contain "evaluated"

View File

@ -7,6 +7,5 @@ Feature: task evaluation
puts 'hello from recipe' puts 'hello from recipe'
end end
""" """
When I execute the recipe When I successfully execute the recipe
Then the exit status must be 0
And the output must contain exactly "hello from recipe\n" And the output must contain exactly "hello from recipe\n"

View File

@ -12,8 +12,7 @@ Feature: `has_env' condition keyword
echo 'evaluated' echo 'evaluated'
end end
""" """
When I execute the recipe When I successfully execute the recipe
Then the exit status must be 0
And the output must contain "evaluated" And the output must contain "evaluated"
Scenario: fails when remote environment variable is not defined Scenario: fails when remote environment variable is not defined
@ -27,6 +26,5 @@ Feature: `has_env' condition keyword
echo 'evaluated' echo 'evaluated'
end end
""" """
When I execute the recipe When I successfully execute the recipe
Then the exit status must be 0
And the output must not contain "evaluated" And the output must not contain "evaluated"