mirror of
https://github.com/redmine/redmine.git
synced 2025-11-07 13:55:52 +01:00
Fixes a random failing test in @test_plugins@ (integration/routing/plugins_test.rb) by enforcing the plugins path to @tmp/plugins@ (#38707).
git-svn-id: https://svn.redmine.org/redmine/trunk@22373 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
@@ -21,6 +21,8 @@ require File.expand_path('../../test_helper', __dir__)
|
||||
|
||||
class RoutingPluginsTest < Redmine::RoutingTest
|
||||
setup do
|
||||
@tmp_plugins_path = Rails.root.join('tmp/test/plugins')
|
||||
|
||||
@setup_plugin_paths = []
|
||||
@setup_plugin_paths << setup_plugin(
|
||||
:redmine_test_plugin_foo,
|
||||
@@ -49,6 +51,9 @@ class RoutingPluginsTest < Redmine::RoutingTest
|
||||
end
|
||||
CONTROLLER_CONTENT
|
||||
)
|
||||
|
||||
# Change plugin loader's directory for testing
|
||||
Redmine::PluginLoader.directory = @tmp_plugins_path
|
||||
Redmine::PluginLoader.load
|
||||
Redmine::PluginLoader.directories.each(&:run_initializer) # to define relative controllers
|
||||
RedmineApp::Application.instance.routes_reloader.reload!
|
||||
@@ -69,7 +74,8 @@ class RoutingPluginsTest < Redmine::RoutingTest
|
||||
private
|
||||
|
||||
def setup_plugin(plugin_name, **relative_path_to_content)
|
||||
plugin_path = Redmine::Plugin.directory / plugin_name.to_s
|
||||
Redmine::Plugin.directory = @tmp_plugins_path
|
||||
plugin_path = Redmine::Plugin.directory / plugin_name.to_s
|
||||
plugin_path.mkpath
|
||||
(plugin_path / "init.rb").write(<<~INITRB)
|
||||
Redmine::Plugin.register :#{plugin_name} do
|
||||
|
||||
Reference in New Issue
Block a user