Rails 5 тестирует NoMethodError

Я обновляю существующее приложение с Rails 4 до 5.0.0.beta2. На самом деле едет красиво!

Но у меня возникают проблемы с тестами контроллера. Выдает эту ошибку:

    E

    Error:
    SeiteControllerTest#test_should_get_index:
    NoMethodError: undefined method `each' for nil:NilClass

    bin/rails test test/controllers/seite_controller_test.rb:14

    Finished in 1.068562s, 0.9358 runs/s, 0.0000 assertions/s.

    1 runs, 0 assertions, 0 failures, 1 errors, 0 skips

Вот код (с использованием стандартного test_helper):

    require 'test_helper'

    class SeiteControllerTest < ActionController::TestCase

      setup do 

      end

      test "should get index" do
        #get :index
      end

    end

Строка 14 — это строка «тест должен получить индекс». Излишне говорить, что если я раскомментирую строку «get:index», я получу ту же ошибку.


person Wido Menhardt    schedule 19.02.2016    source источник
comment
Можете ли вы поделиться кодом для SeiteController?   -  person gnerkus    schedule 22.02.2016


Ответы (1)


У меня была, похоже, та же проблема. Что исправило это для меня, так это поставить в конце test_helper.rb следующее:

class ActionDispatch::IntegrationTest
  include Rails::Controller::Testing::TestProcess
  include Rails::Controller::Testing::TemplateAssertions
  include Rails::Controller::Testing::Integration
end
person Lencho Reyes    schedule 03.03.2016