Итак, мы настраивали attr_accessible
и attr_protected
во многих полях через наше приложение Rails 3.2.Пока мы действительно не тестируем, чтобы убедиться, что эти поля защищены.
Поэтому я решил погуглить некоторые ответы и наткнулся на это решение:
RSpec::Matchers.define :be_accessible do |attribute|
match do |response|
response.send("#{attribute}=", :foo)
response.send("#{attribute}").eql? :foo
end
description { "be accessible :#{attribute}" }
failure_message_for_should { ":#{attribute} should be accessible" }
failure_message_for_should_not { ":#{attribute} should not be accessible" }
end
Но это решение только дляпосмотрите, отвечает ли метод.Мне нужен способ проверить, что атрибуты могут и не могут быть назначены массово.Я искренне люблю синтаксис
it { should_not be_accessible :field_name }
it { should be_accessible :some_field }
У кого-нибудь есть лучшее решение этой проблемы?