Как проверить поля attr_accessible в RSpec

Итак, мы настраиваем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 }

У кого-нибудь есть лучшее решение этой проблемы?

Ответы на вопрос(3)

Ваш ответ на вопрос