【发布时间】:2016-01-05 16:18:13
【问题描述】:
我在我的 rails_helper 中设置了事务...
config.use_transactional_fixtures = true
我之前的每个块是这样的:
before(:each) do
allow(subject).to receive_messages(
:authenticate => true,
:authorize => true
)
@user_song = FactoryGirl.create(:user_song)
FactoryGirl.create(:user_playlist, user_id: @user_song.user_id,
album_id: @user_song.song.album_id)
allow_any_instance_of(ApplicationController).to receive_messages(
:current_user => @user_song.user
)
测试因验证错误而失败,但是,如果我在创建 FactoryGirl 之前为每个使用的模型插入 Model.destroy_all,它就可以工作。我很困惑。
为什么? Rspec rails guide 说应该回滚?是与 FactoryGirl 相关的吗?
【问题讨论】:
标签: ruby-on-rails ruby rspec factory-bot rspec-rails