【发布时间】:2016-11-28 06:45:42
【问题描述】:
This question 告诉我如何从 RSpec 模型和控制器规范测试记录器语句。不幸的是,它似乎不适用于功能规范。使用此代码:
# controller.rb
def action
logger.info 'foobar'
end
# spec.rb
scenario 'logging should work' do
expect(Rails.logger).to receive(:info).with('foobar')
visit action_path
end
我得到错误:
Failure/Error: visit action_path
#<ActiveSupport::Logger:0x007ff45b6e5ad0> received :info with unexpected arguments
expected: ("foobar")
got: (no args)
test.log 文件不包含 foobar,因此在控制器操作有机会完成之前,测试似乎立即失败。
有没有办法在功能规范中使用这种expect(Rails.logger) 语法?
【问题讨论】:
-
这里有答案吗?
标签: ruby-on-rails ruby logging rspec