小编kal*_*lle的帖子

factory girl:关联问题测试模型,其中包含validates_presence_of accepts_nested_attributes_for

我有一个简单的联想:

class Account < ActiveRecord::Base
  has_many :users

  accepts_nested_attributes_for :users
  validates_presence_of :users
end
Run Code Online (Sandbox Code Playgroud)

class User < ActiveRecord::Base
  belongs_to :account
end
Run Code Online (Sandbox Code Playgroud)

我只是想进行一个简单的测试:

describe 'a new', Account do
  it 'should be valid' do
    Factory.build(:account).should be_valid
  end
end
Run Code Online (Sandbox Code Playgroud)

与工厂:

Factory.define :account do |a|
  a.name                 { Faker::Company.name }
end

Factory.define :user do |u|
  u.association           :account
  u.email                 { Faker::Internet.email }
end
Run Code Online (Sandbox Code Playgroud)

但我总是遇到这个错误:

'a new Account should be valid' FAILED
Expected #<Account id: nil, name: "Baumbach, Gerlach and Murray" > to be valid, but it was …
Run Code Online (Sandbox Code Playgroud)

ruby testing ruby-on-rails factory-bot

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

标签 统计

factory-bot ×1

ruby ×1

ruby-on-rails ×1

testing ×1