В модели следующее:
validates_uniqueness_of :title,
if: proc { |item| item.item_type == 'tag' },
case_sensitive: false,
message: I18n.t('errors.key', value: "%{value}")
и пытается проверить в rspec следующее:
expect { xxx }.to raise_error(
ActiveRecord::RecordInvalid,
I18n.t('errors.key', value: '...passing the title...')
)
Задерживается очень близко:
ActiveRecord::RecordInvalid with "translated error",
got #<ActiveRecord::RecordInvalid: Validation failed: translated error>
Ожидание ожидает значения без котировки, в то время как отправленное значение имеет котировку; он не работает на этом
Я получаю ту же самую ошибку с настройкой по умолчанию:
activerecord:
errors:
models:
item:
attributes:
title:
taken: 'translated error'
Тот же тест проходит следующим образом:
expect { xxx }.to raise_error
expect { xxx }.to raise_error( ActiveRecord::RecordInvalid )
Так же, используя настройку по умолчанию:
Спасибо, если какая-либо помощь на этом