ruby - 期待(类)。接收(:new) syntax

标签 ruby rspec

我期望下面的工作

expect(UserUpdateService).to receive(:new)

但它引发了一个期望

undefined method `receive' for #<RSpec::Core::ExampleGroup::Nested_1:0x007faa044d42d8>

但是,“旧”语法有效:

UserUpdateService.should_receive(:new)

知道为什么第一个/新语法会抛出异常吗?

最佳答案

这个例子通过了 rspec 2.14.1

specify do
  expect(UserUpdateService).to receive(:new)
  UserUpdateService.new
end

关于ruby - 期待(类)。接收(:new) syntax,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19025479/

相关文章:

ruby - 为什么强制 2.coerce(3.3) 返回 [3.3, 2.0]?

ruby - proc 和 lambda 之间有什么区别?

ruby - OS X Yosemite ffi-hunspell dyld 惰性符号绑定(bind)失败 : symbol not found

ruby-on-rails - "application_id"上的门卫 ActiveRecord::NotNullViolation(密码授予)

ruby-on-rails - rails : RSpec: using global path variables only seems to work within "it" blocks

ruby-on-rails-3 - 使用 Capybara + Selenium 时禁用 JavaScript

ruby - `require' : cannot load such file -- mongo (LoadError)

ruby-on-rails - rails 4 : How to upload files with AJAX

ruby - 在使用 any_instance 的情况下,如何让 stub 返回调用它的实例?

ruby-on-rails - rspec-rails : Failure/Error: get "/" No route matches