FactoryGirl の create メソッドまたは build メソッドを呼び出すたびに、奇妙なエラーが発生します。
私の仕様ファイルには、ユーザーの基本的なリストを作成する前のブロックがあります。
require 'spec_helper'
describe "Users" do
before do
create_list(:user, 3, :confirmed)
@user = User.first
end
end
この行create_list
は次のエラーをスローします。
TypeError: nil is not a symbol
./spec/requests/users_spec.rb:5:in `block (2 levels) in <top (required)>'
私の唯一の工場ファイル./spec/factories/user.rb
がロードされているようです。最初の行でエラーを発生させると、仕様テストを実行したときにこのエラーがスローされます。
これは私の工場ファイルの内容です:
FactoryGirl.define do
factory :user, aliases: [:friend] do
sequence(:username) { |n| "foo#{n}" }
password "foobar"
password_confirmation {"#{password}"}
email { "#{username}@example.com" }
date_of_birth 20.years.ago
trait :admin do
admin true
end
trait :game_admin do
game_admin true
end
trait :confirmed do
confirmed_at Time.now
end
end
end