1

我只是想测试我的用户模型。

错误来自测试这个位。

describe User do
  before do 
    @user = User.new(email: "foo@bar.com", password:"foobar",
                 password_confirmation:"foobar", goal:"cut")
  end

  subject( @user )    
  .
  .
  .

这是确切的错误:

rspec-core-2.10.1/lib/rspec/core/subject.rb:180:in `subject': wrong number of arguments (1 for 0) (ArgumentError)

谢谢您的帮助!

4

1 回答 1

4

在 rspec 2.10.1 中,subject() 不允许任何参数。见http://rubydoc.info/gems/rspec-core/2.10.1/RSpec/Core/Subject/ExampleGroupMethods#subject-instance_method

我相信你实际上想将@user 作为一个块传递,所以:

subject{ @user }

注意 {} 而不是 ()。

于 2012-09-11T02:50:39.293 回答