У меня есть модель Workout, в которой есть много PerformedExercises, в которых много PeformedSets.Я не могу заставить его построить объект в моем тесте, и я не уверен, что это SQLite3 или что-то еще (он отлично работает вне среды тестирования).
У меня есть следующие фабрики:
FactoryGirl.define do
factory :workout do
title 'workout one'
performed_exercise
end
factory :performed_exercise do
exercise_id '2'
performed_set
end
factory :performed_set do
set_number '1'
end
end
Мой тест RSpec выглядит так (я сделал его очень простым, чтобы исключить любые другие проблемы внутри теста):
it "is causing me to lose hair" do
wrkt = FactoryGirl.build(:workout)
end
Когда я запускаю тест, яполучите следующее сообщение об ошибке:
Failure/Error: wrkt = FactoryGirl.build(:workout)
ActiveRecord::StatementInvalid:
SQLite3::ConstraintException: constraint failed:
INSERT INTO "performed_sets" ("created_at", "notes", "performed_exercise_id", "reps", "set_number", "updated_at", "weight")
VALUES (?, ?, ?, ?, ?, ?, ?)
Любая помощь будет принята с благодарностью!