小编bhv*_*hvd的帖子

具有测试血统的工厂

我想运行一些 RSpec 测试来测试 Rails 中的 Ancestry。我想使用 FactoryGirl 为测试创建机构实例。我尝试了下面提到的以下方法,但没有成功创建子记录。

工厂.rb文件

  factory :institution do
    # sequence(:name) { |n| "University of XYZ#{n}" }
  end
Run Code Online (Sandbox Code Playgroud)

在测试中,我使用以下样式 样式:1

let(:institution){ FactoryGirl.create(:institution, name: "ABC Institution") }
let(:institution_child) {FactoryGirl.create(:institution, name: "Sub Institution", ancestry: institution.id) }
Run Code Online (Sandbox Code Playgroud)

款式:2

let(:institution){ FactoryGirl.create(:institution, name: "ABC Institution") }
let(:institution_child) {FactoryGirl.create(:institution, name: "Sub Institution", parent_id: institution.id) }
Run Code Online (Sandbox Code Playgroud)

款式:3

describe Institution do
  before do
    @institution = Institution.create({:institution, name: "ABC Institution"})
    @institution_child = Institution.create(:institution, name: "Sub Institution"}
  end

  it "should create the child institution" do
    assigns(:institution_child).should be_a_new(Institution) …
Run Code Online (Sandbox Code Playgroud)

rspec ruby-on-rails ancestry factory-bot

3
推荐指数
1
解决办法
1106
查看次数

标签 统计

ancestry ×1

factory-bot ×1

rspec ×1

ruby-on-rails ×1