blob: 186e654f6bee02113c938aaeaa836842ca7e21d9 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
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 ||= {}
@output[task_name] = `rake #{task_name} 2>&1`
@result[task_name] = $?.success?
end
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
@result[task_name].should be_true
end
end
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
|