Обновление до Rspec rails 3

#ruby-on-rails #ruby-on-rails-4 #rspec #rspec-rails #rspec3

#ruby-on-rails #ruby-on-rails-4 #rspec #rspec-rails #rspec3

Вопрос:

При попытке обновления с 2.14.2 до rspec 3.x появляются сообщения об отмене

 The `:example_group` key in an example group's metadata hash is deprecated. Use the example group's hash directly for the computed keys and `:parent_example_group` to access the parent example group metadata instead. Called from /home/georgi/ruby/xxx/spec/models/user_spec.rb:2:in `<top (required)>'.
  

Это сообщение отображается для каждой строки в файле спецификации, в которой есть ‘describe’. Драгоценные камни, которые я использую в тестовой среде, это

 group :development, :test do
  gem 'rspec-rails'
end

group :test do
  gem 'factory_girl_rails'
  gem 'database_cleaner'
  gem 'capybara'
  gem 'poltergeist'
  gem 'selenium-webdriver', '~> 2.42.0'
  gem 'shoulda-matchers'
  gem 'rspec-retry'
  gem 'simplecov'
end
  

Информация из config.raise_errors_for_deprecations! конфигурация:

https://gist.github.com/tapalilov/b96b4e2f4237e2ecef84

Как удалить эти устаревшие сообщения и как изменить конфигурацию rspec?

С наилучшими пожеланиями, Георгий.

Комментарии:

1. Убедитесь, что вы используете последние версии этих gems — некоторые из них были обновлены для rspec 3. Некоторые не тестируемые драгоценные камни (например, draper) также необходимо обновить для rspec 3

2. в этой спецификации я использую только сопоставления «shoulda matchers». Возможно, проблема в этом драгоценном камне

3. Это даже не обязательно должно быть что-то, что использует эта спецификация — простая загрузка gem может вызвать это предупреждение об устаревании

4. я нашел, какой драгоценный камень вызывает это предупреждение об устаревании. это когда требуется ‘pundit / rspec’. я требовал их один за другим.

5. при посещении github.com/elabs/pundit/issues их страница проблем полна предупреждений об устаревании. Спасибо @FrederickCheung за то, что указал мне правильное направление