2012-09-29 57 views
0

我正在編寫我正在寫的引擎寶石的測試。我正在使用Rspec,測試似乎運行良好。但是每當一個視圖使用另一個gem的助手,比如「will_paginate」或「ransack」,我就會得到一個「未定義的方法」錯誤。如何讓其他寶石助手進入我的引擎寶石的測試?

我試過在我的Gem的Gemfile(除了engine.gemspec文件)以及虛擬應用程序的Gemfile中包含其他寶石,但我得到了同樣的錯誤。我也試過在spec/spec_helper.rb文件中包含gems。

所以我試過最多的東西這裏提到:

Setup RSpec to test a gem (not Rails)

通常情況下,對Rspec的測試對於一個普通的Rails應用程序,這些助手似乎只是包含了一些如何,因爲我不有這個問題運行測試的常規Rails應用程序。

我也一直需要到命名空間我的網址助手的意見的東西,如: engine.resources_path

我不知道這是一些配置,我搞砸上的症狀。

安裝到其他應用程序並在瀏覽器中查看時,引擎中的所有內容都可以正常運行。

任何想法?

回答

1

原來,更好的方法是從寶石中剔除方法,因爲寶石應該測試自己的方法。如果我誤解了任何內容,請告訴我。謝謝!