Я использую minitest на Ruby on Rails. Ниже моя модель.тест уникальности на minitest
require 'mongoid'
class Person
include Mongoid::Document
index({ pin: 1 }, { unique: true, name: "pin_index" })
field :first_name
field :last_name
field :pin
validates :pin, presence: true, uniqueness: true
validates :first_name, presence: true
validates :last_name, presence: true
end
Я пытаюсь написать модель test.I хочет написать тест, который контролирует ли штырьковое поле является уникальным или нет. Как я могу это сделать? Есть идеи?
Я пытаюсь написать тест, как показано ниже:
it 'must not be valid' do
person_copy = person.dup
person.save
person_copy.save
end
использовать 'person_copy.save!', чтобы поднять ошибку, когда уникальность ложна. С RSpec вы можете использовать некоторые приятные помощники, такие как 'expect {person_copy.save! } .to raise_error' – 23tux