【发布时间】:2015-02-22 00:17:23
【问题描述】:
我已将我的用户和班次工厂结合起来以节省空间。
FactoryGirl.define do
factory :user do
name 'test'
password 'test'
phone_number '1-444-555-8888'
end
factory :shift do
user
end
end
这是我的测试。 'shifts = create_list(:shift, 20)' 失败
require 'spec_helper'
describe MyFirebase do
let(:dummy_class) { Class.new { include MyFirebase } }
describe ".firebase_update_duration" do
it "should update total duration value in firebase", focus: true do
shifts = create_list(:shift, 20)
instance = dummy_class.new
duration = instance.firebase_update_duration
p "/" * 100
p duration
p "/" * 100
duration.should eq(Shift.shift_duration_total)
end
end
end
这是错误:
Failure/Error: shifts = create_list(:shift, 20)
ActiveRecord::RecordNotUnique:
PG::UniqueViolation: ERROR: duplicate key value violates unique constraint "index_users_on_phone_number"
DETAIL: Key (phone_number)=(1-444-555-8888) already exists.
怎么会有重复的用户记录?我以为我正在为特定用户创建一个班次列表(用户一对多班次关联)。
【问题讨论】:
标签: ruby-on-rails rspec factory-bot