我有一个简单的Rake任务,其中含有puts
语句
namespace :atask
task something: :environment do
puts 'Foo'
end
end
我的规格如下
describe 'atask:something' do
before { MyApp.Application.load_tasks }
context 'one' do
it do
Rake::Task['atask:something'].invoke
end
end
context 'two' do
it do
Rake::Task['atask:something'].invoke
end
end
context 'three' do
it do
Rake::Task['atask:something'].invoke
end
end
end
如您所见,它有3个上下文和3个it块。因此,每次调用任务时我应该在控制台中看到'Foo'三次。然而,尽管它被调用了三次,但我在控制台中只看到一次'Foo'。