测试辅助方法w / Controller Dependency

时间:2018-05-01 01:23:00

标签: ruby-on-rails ruby unit-testing testing

作为rails应用程序的一部分,我在ApplicationHelper下创建了一个帮助程序,用于检查devise生成的错误并将其添加到flash[:error]哈希。

  def devise_flash
    if controller.devise_controller? && resource && resource.errors.any?
      # modify flash
    end
  end

在视图层中调用此助手(例如application.html.erb)。

但是,我无法对此方法进行单元测试,因为它依赖于控制器实例作为设计控制器。我可以通过使用assert_select检查视图来测试它,它使用帮助器来显示flash消息,但这感觉很奇怪。

这是设计糟糕的症状吗?别的什么?我是否应该寻找方法来控制控制器以对该功能进行单元测试?

0 个答案:

没有答案