2016-05-17 4 views
0

rspecテストにconfig_for設定を含める方法はありますか?私は、以下の設定は、設定/初期化子/ settings.rbで構成されていますrspecヘルパーの設定config_forを含む

SETTINGS = Rails.application.config_for(:settings) 

が、それらはRSpecの中に自動的にロードされていない、それは、次のトリガ:

Failure/Error: generator = SETTINGS['my_strategy'].constantize.new(file) 

NoMethodError: 
    undefined method `constantize' for nil:NilClass 

それはモジュールではないので私はそれを通常の方法で含めることができず、何かを次のようにすることはできません:

config.include Rails.application, type: :controller 

私の意見では、適切なことではありません。

+0

実際のユースケースは何ですか? – max

+0

rspecはRails :: Applicationで自動的にロードされる必須の定数、特に "config_for"定数を自動ロードしない場合があります。 – user1213904

+0

この定数はどこで定義されていますか? – tebayoso

答えて

0

私はconfig_for設定をロードできるrspecヘルパーが見つかりませんでした。私はこれを次のようにして解決しました:

before :all do 
    SETTINGS['my_strategy'] = 'StrategyClass' 
end 

これは、定数のロードを解決しました。

+0

これは実際には1つの定数の使用のみを解決します。そして、必要なものをそれぞれ定義する必要があります。 – tebayoso

関連する問題