Я пытаюсь получить доступ к переменным экземпляра внутри моих контроллеров с помощью minitest.Доступ к переменным экземпляра контроллера с помощью Minitest
Например:
microposts_controller.rb:
def destroy
p "*"*40
p @cats = 42
end
Как бы проверить значение @cats
с внутренним microposts_controller_test.rb
с MiniTest?
Я знаю, что могу представить delete
запрос от браузера и проверить мои логи сервера и найти:
"****************************************"
42
Я прочитал в another answer, что у меня есть доступ к assigns
хэш со всеми переменными экземпляра, но Бесполезный Не работай. Я также пробовал искать внутри объекта controller
. Показанный ниже:
microposts_controller.rb:
test "@cats should exist in destroy method" do
delete micropost_path(@micropost)
p controller.instance_variables
p assigns[:cats]
end
выход:
[:@_action_has_layout, :@_routes, :@_request, :@_response, :@_lookup_context, :@_action_name, :@_response_body, :@marked_for_same_origin_verification, :@_config, :@_url_options]0:04
nil
Я ожидал увидеть переменную @cats
экземпляра внутри controller
объекта. Я также ожидал, что выйдет .
Что мне здесь не хватает?