【问题标题】:How to get other Gem helpers into my Engine Gem's tests?如何让其他 Gem 助手进入我的 Engine Gem 测试?
【发布时间】:2012-09-20 21:41:16
【问题描述】:

我正在尝试为我正在编写的引擎 gem 编写测试。我正在使用 Rspec,测试似乎运行良好。但是,每当视图使用来自另一个 gem 的帮助器时,例如“will_paginate”或“ransack”,我都会收到“未定义方法”错误。

我尝试在我的 gem 的 Gemfile(除了 engine.gemspec 文件)以及虚拟应用程序的 Gemfile 中包含其他 gem,但我得到了同样的错误。我还尝试在 spec/spec_helper.rb 文件中包含 gem。

所以我已经尝试了这里提到的大部分内容:

Setup RSpec to test a gem (not Rails)

通常,对于常规 Rails 应用程序的 Rspec 测试,这些帮助程序似乎只是包含一些方法,因为我在运行常规 Rails 应用程序的测试时没有这个问题。

我还需要在视图中为我的 url 助手命名空间,例如: engine.resources_path

我不确定这是否是我搞砸了某些配置的征兆。

当安装到另一个应用程序并在浏览器上查看时,引擎中的一切运行良好。

有什么想法吗?

【问题讨论】:

    标签: ruby-on-rails rspec gem helper rails-engines


    【解决方案1】:

    事实证明,更好的方法是从 gem 中提取方法,因为 gem 无论如何都应该测试自己的方法。如果我有什么误解,请告诉我。谢谢!

    【讨论】:

      猜你喜欢
      • 2011-12-08
      • 2012-09-14
      • 1970-01-01
      • 1970-01-01
      • 2015-02-10
      • 1970-01-01
      • 1970-01-01
      • 2011-08-04
      • 2014-11-20
      相关资源
      最近更新 更多