8

テストの実行時に ActiveAdmin を無効にしたい。

そこでrequire: false、Gemfile に追加し、if defined?(ActiveAdmin)ルートと初期化子をチェックインします。

しかし、Rails は引き続きモデル フォームをロードするため、 「: uninitialized constant ActiveAdmin (NameError)」のapp/adminようなエラーが発生します。/app/admin/admin_user.rb:1:in

app/adminディレクトリがロードされないように「ブラックリストに登録」する最良の方法は何ですか?

4

2 に答える 2

9
# config/environments/test.rb

path_rejector = lambda { |s| s.include?("app/admin") }

# Remove the path from being loaded when Rails starts:
config.eager_load_paths = config.eager_load_paths.reject(&path_rejector)

# Remove the path from being lazily loaded
ActiveSupport::Dependencies.autoload_paths.reject!(&path_rejector)
于 2012-12-07T08:52:15.987 に答える