I have a model defined this way
class Lga < ActiveRecord::Base validates_uniqueness_of :code validates_presence_of :name end
I defined a factory for lgas with
Factory.sequence(:lga_id) { |n| n + 10000 } Factory.define :lga do |l| id = Factory.next :lga_id l.code "lga_#{id}" l.name "LGA #{id}" end
However, when I run
Factory.create(:lga) Factory.create(:lga)
in script/console I get
>> Factory.create(:lga) => #<Lga id: 2, code: "lga_10001", name: "LGA 10001", created_at: "2010-03-18 23:55:29", updated_at: "2010-03-18 23:55:29"> >> Factory.create(:lga) ActiveRecord::RecordInvalid: Validation failed: Code has already been taken
ruby-on-rails factory-bot
Sean seefried
source share