#works
マークされた行が機能するのに、マークされた行#causes error
がエラーを引き起こす理由を誰かが理解するのを手伝ってくれますか? (これは rspec-rails 2.11.0 を使用した Rails 3.2.6 です)
エラー:undefined method 'more_things=' for #<Proc:0x007fbd23d0b960> (NoMethodError)
仕様:
describe User do
subject { User.new }
it "has no something" do
User.new.more_things = "#works" #works
subject.something.should be_empty #works
end
describe "#more_things" do
User.new.more_things = "#works" #works
subject.more_things = "#causes error" #causes error
end
end
モデル:
class User
def something
[]
end
def more_things=(value)
end
end
ある種のスコープの問題である可能性があると考えて別のsubject { User.new }
ものを内部に入れてみましたが、それは役に立ちませんでした(何かを返すため、スコープの問題ではありません- a .describe "#more_things" do
subject
Proc