3

我正在尝试测试一个使用 rails 配置文件的类。我想模拟 Rails::configuration。

我试过像

Rails::singleton_class.expects(:configuration).returns('result')
Rails::singleton_class.stubs(:configuration).returns('result')

我该怎么做呢?

4

2 回答 2

2
Rails.expects(:configuration).returns('result')

请注意,您的示例中有一个错字。返回值必须使用returns而不是传递return

另请注意,Rails.configuration返回Rails.application.config. 如果您的方法不Rails.configuration直接使用,它实际上可能会绕过调用,并且您的期望不会起作用。

于 2011-09-02T07:22:33.200 回答
0
Rails.stubs(:configuration).returns(Rails::Application::Configuration.allocate)

这个关于模拟网络响应的答案有 帮助

于 2011-09-02T21:12:05.093 回答