summaryrefslogtreecommitdiff
path: root/features/step_definitions/execution.rb
diff options
context:
space:
mode:
Diffstat (limited to 'features/step_definitions/execution.rb')
-rw-r--r--features/step_definitions/execution.rb27
1 files changed, 18 insertions, 9 deletions
diff --git a/features/step_definitions/execution.rb b/features/step_definitions/execution.rb
index 74c25ef..186e654 100644
--- a/features/step_definitions/execution.rb
+++ b/features/step_definitions/execution.rb
@@ -1,13 +1,19 @@
+Given %r{^I've already successfully executed rake task '(.*)'$} do |task_name|
+ emptyness = `rake #{task_name} 2>&1`
+ puts emptyness
+ raise "rake failed with #{$?.exitstatus}" unless $?.success?
+ puts File.mtime("lib/extension_one.so")
+ puts File.mtime("tmp/extension_one/extension_one.so")
+end
+
When /^rake task '(.*)' is invoked$/ do |task_name|
@output ||= {}
@result ||= {}
- FileUtils.chdir @safe_dir do
- @output[task_name] = `rake #{task_name} 2>&1`
- @result[task_name] = $?.success?
- end
+ @output[task_name] = `rake #{task_name} 2>&1`
+ @result[task_name] = $?.success?
end
-When /^rake task '(.*)' succeeded$/ do |task_name|
+Then /^rake task '(.*)' succeeded$/ do |task_name|
if @result.nil? || !@result.include?(task_name) then
raise "The task #{task_name} should be invoked first."
else
@@ -15,8 +21,11 @@ When /^rake task '(.*)' succeeded$/ do |task_name|
end
end
-Then /^output of rake task '(.*)' (does|does not) match \/(.*)\/$/ do |task_name, condition, regexp|
- (condition == 'does') ?
- @output[task_name].should(match(%r[#{regexp}])) :
- @output[task_name].should_not(match(%r[#{regexp}]))
+Then /^output of rake task '(.*)' (contains|do not contain) \/(.*)\/$/ do |task_name, condition, regex|
+ puts @output[task_name]
+ if condition == 'contains' then
+ @output[task_name].should match(%r(#{regex}))
+ else
+ @output[task_name].should_not match(%r(#{regex}))
+ end
end