次のような単純なユーザー ファクトリがあります。
FactoryGirl.define do
factory :user do
name "jeff"
email "jeff@lint.com"
password "foobar"
password_confirmation "foobar"
end
end
そして、組み込みのauthenticate
メソッドを次のようにテストしようとしています:
describe "return value of authenticate method", focus: true do
before do
create(:user)
end
let(:found_user) { User.find_by_email(:email) }
it "can return value of authenticate method" do
expect(:user).to eq found_user.authenticate(:password)
end
end
私が得ているエラーは
NoMethodError:
undefined method `authenticate' for nil:NilClass
それはおそらくfound_user
nil を返すことを意味します。しかし、私はその理由を理解していません。このコードをコンソールで試すと、問題なく動作します。それで、私は何を間違っていますか?私はFactory Girlを始めたばかりです。
私が探しているのは、インスタンス変数を使用せずにこれを正しく行うことです。