Mongoidを使用しています。私はオブジェクトを持っています:
class Employee
include Mongoid::Document
field :name_first, type: String
field :name_last, type: String
field :name_other, type: Array, default: []
field :title, type: String
field :education, type: Hash, default: {}
field :languages, type: Array, default: []
field :phone, type: Hash, default: {}
field :address, type: Hash, default: {}
field :email, type: Array, default: []
field :url, type: Array, default: []
field :history, type: Array, default: []
field :profile, type: String
field :social_media, type: Hash, default: {}
field :last_contact, type: Time
field :signed_up, type: Date
belongs_to :user
belongs_to :practice
end
そして、私はファブリケーションを使おうとしていますが、問題があります。ジェムは正常にインストールされました。/spec/fabricators/employee_fabricator.rbにあります
Fabricator :employee do
end
そしてmy_controller_spec.rbに私は持っています:
describe CasesController do
describe "viewing cases" do
before(:each) do
Fabricate(:employee)
end
it "allows viewing the cases index page" do
get 'index'
response.should_not be_success
end
end
end
ターミナルで「rspecspec」を実行すると、次のようになります。
Failures:
1) CasesController viewing cases allows viewing the cases index page
Failure/Error: Fabricate(:employee)
ArgumentError:
wrong number of arguments (2 for 1)
何が起きてる?私はさまざまな順列を試しましたが、そのうちのいくつかは他のエラーをスローしますが、何も実行されません。Fabricate(:employee)行を呼び出さなくても、期待どおりに実行されますが、これまでのところ、空のテストしかありません...