summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGo MAEDA <maeda@farend.jp>2021-12-08 01:23:51 +0000
committerGo MAEDA <maeda@farend.jp>2021-12-08 01:23:51 +0000
commit1ae29debf4efbf5406221376bb062ff7d0efe310 (patch)
treecd3754afd484cf335ab9606f20621ef49f51ab54
parent080a8d06684fb2b290d55bef2ed76d82d71a6d46 (diff)
downloadredmine-1ae29debf4efbf5406221376bb062ff7d0efe310.tar.gz
redmine-1ae29debf4efbf5406221376bb062ff7d0efe310.zip
Fix redmine:plugins:assets rake task fails (#36287, #32938).
Patch by Mizuki ISHIKAWA. git-svn-id: http://svn.redmine.org/redmine/trunk@21300 e93f8b46-1217-0410-a6f0-8f06a7374b81
-rw-r--r--lib/redmine/plugin_loader.rb8
-rw-r--r--lib/tasks/redmine.rake2
-rw-r--r--test/unit/lib/redmine/plugin_loader_test.rb14
3 files changed, 21 insertions, 3 deletions
diff --git a/lib/redmine/plugin_loader.rb b/lib/redmine/plugin_loader.rb
index 7b05a8a3d..1d2f2db48 100644
--- a/lib/redmine/plugin_loader.rb
+++ b/lib/redmine/plugin_loader.rb
@@ -136,8 +136,12 @@ module Redmine
@plugin_directories
end
- def self.mirror_assets
- directories.each(&:mirror_assets)
+ def self.mirror_assets(name=nil)
+ if name.present?
+ directories.find{|d| d.to_s == File.join(directory, name)}.mirror_assets
+ else
+ directories.each(&:mirror_assets)
+ end
end
end
end
diff --git a/lib/tasks/redmine.rake b/lib/tasks/redmine.rake
index 2bebaf18c..c7c257bfc 100644
--- a/lib/tasks/redmine.rake
+++ b/lib/tasks/redmine.rake
@@ -150,7 +150,7 @@ DESC
name = ENV['NAME']
begin
- Redmine::Plugin.mirror_assets(name)
+ Redmine::PluginLoader.mirror_assets(name)
rescue Redmine::PluginNotFound
abort "Plugin #{name} was not found."
end
diff --git a/test/unit/lib/redmine/plugin_loader_test.rb b/test/unit/lib/redmine/plugin_loader_test.rb
index 43d100521..2b103420e 100644
--- a/test/unit/lib/redmine/plugin_loader_test.rb
+++ b/test/unit/lib/redmine/plugin_loader_test.rb
@@ -41,6 +41,20 @@ class Redmine::PluginLoaderTest < ActiveSupport::TestCase
assert File.exist?("#{@klass.public_directory}/foo_plugin/stylesheets/foo.css")
end
+ def test_mirror_assets
+ Redmine::PluginLoader.mirror_assets
+
+ assert File.exist?("#{@klass.public_directory}/foo_plugin")
+ assert File.exist?("#{@klass.public_directory}/foo_plugin/stylesheets/foo.css")
+ end
+
+ def test_mirror_assets_with_plugin_name
+ Redmine::PluginLoader.mirror_assets('foo_plugin')
+
+ assert File.exist?("#{@klass.public_directory}/foo_plugin")
+ assert File.exist?("#{@klass.public_directory}/foo_plugin/stylesheets/foo.css")
+ end
+
def clear_public
FileUtils.rm_rf 'tmp/public'
end