Каков наилучший способ проверки логики в режиме рельсов 3?
Пример: когда пользователь подписывается на мой сайт, если они не завершили процесс onboarding, я покажу им предупреждение в верхней части экрана на всех страницах. Эта логика была помещена в макет приложения. Я просто проверяю зарегистрированного пользователя на конкретный ключ. Если ключ НЕ присутствует, я показываю предупреждение. Как только ключ присутствует (что означает, что они завершили сборку), я НЕ показываю предупреждение.
В настоящее время я пытаюсь сделать это с помощью теста просмотра, но я получаю всевозможные ActionView::Template::Error: undefined method
authenticate 'для ошибок nil: NilClass, включая макет приложения, и я не могу проверить эту функцию.
Мне нужно убедиться, что у меня это под тестированием, потому что если по какой-то причине один из моих разработчиков случайно сломал эту функцию (просмотр с включенным onboarding не завершен), нам нужно сразу узнать о сборке.
Код, который я пытаюсь проверить в моем макете, выглядит следующим образом:
<% if user_signed_in? %>
<% unless current_user.has_completed_onboarding? %>
<div class="alert">
You cannot accept payments from your clients until you set up your payment gateway.
<%= link_to "Set up your", payment_gateway_path %> payment gateway. Its quick, we promise. :)
</div>
<% end %>
<% end %>
Я хочу убедиться, что если они не будут проинформированы о деталях, которые будут показаны, и если они были предоставлены, не показывайте это сообщение.