Commit bb5134e1b94445c381761623b23e37175410717c
1 parent
dee13924
Exists in
master
and in
28 other branches
[macro-support-review] Renaming manager first to dispatch_first
Also renaming dispatch_plugins to fetch_plugins and first_plugin to fetch_first_plugin
Showing
4 changed files
with
7 additions
and
44 deletions
Show diff stats
app/controllers/application_controller.rb
... | ... | @@ -178,7 +178,7 @@ class ApplicationController < ActionController::Base |
178 | 178 | def find_by_contents(asset, scope, query, paginate_options={:page => 1}, options={}) |
179 | 179 | scope = scope.send(options[:filter]) if options[:filter] |
180 | 180 | |
181 | - @plugins.first(:find_by_contents, asset, scope, query, paginate_options, options) || | |
181 | + @plugins.dispatch_first(:find_by_contents, asset, scope, query, paginate_options, options) || | |
182 | 182 | fallback_find_by_contents(asset, scope, query, paginate_options, options) |
183 | 183 | end |
184 | 184 | ... | ... |
app/controllers/public/content_viewer_controller.rb
... | ... | @@ -98,7 +98,7 @@ class ContentViewerController < ApplicationController |
98 | 98 | session[:notice] = _("Notification of new comments to '%s' was successfully canceled") % params[:email] |
99 | 99 | end |
100 | 100 | end |
101 | - | |
101 | + | |
102 | 102 | @comments = @plugins.dispatch_first(:load_comments, @page) |
103 | 103 | @comments ||= @page.comments.without_spam.as_thread |
104 | 104 | @comments = [@comments] unless @comments.is_a?(Array) | ... | ... |
lib/noosfero/plugin/manager.rb
... | ... | @@ -24,7 +24,7 @@ class Noosfero::Plugin::Manager |
24 | 24 | dispatch_without_flatten(event, *args).flatten |
25 | 25 | end |
26 | 26 | |
27 | - def dispatch_plugins(event, *args) | |
27 | + def fetch_plugins(event, *args) | |
28 | 28 | map { |plugin| plugin.class if plugin.send(event, *args) }.compact.flatten |
29 | 29 | end |
30 | 30 | |
... | ... | @@ -32,18 +32,9 @@ class Noosfero::Plugin::Manager |
32 | 32 | map { |plugin| plugin.send(event, *args) }.compact |
33 | 33 | end |
34 | 34 | |
35 | - def dispatch_first(event, *args) | |
36 | - value = nil | |
37 | - map do |plugin| | |
38 | - value = plugin.send(event, *args) | |
39 | - break if value | |
40 | - end | |
41 | - value | |
42 | - end | |
43 | - | |
44 | 35 | alias :dispatch_scopes :dispatch_without_flatten |
45 | 36 | |
46 | - def first(event, *args) | |
37 | + def dispatch_first(event, *args) | |
47 | 38 | result = nil |
48 | 39 | each do |plugin| |
49 | 40 | result = plugin.send(event, *args) |
... | ... | @@ -52,7 +43,7 @@ class Noosfero::Plugin::Manager |
52 | 43 | result |
53 | 44 | end |
54 | 45 | |
55 | - def first_plugin(event, *args) | |
46 | + def fetch_first_plugin(event, *args) | |
56 | 47 | result = nil |
57 | 48 | each do |plugin| |
58 | 49 | if plugin.send(event, *args) | ... | ... |
test/unit/plugin_manager_test.rb
... | ... | @@ -135,7 +135,7 @@ class PluginManagerTest < ActiveSupport::TestCase |
135 | 135 | environment.enable_plugin(Plugin2.name) |
136 | 136 | environment.enable_plugin(Plugin3.name) |
137 | 137 | |
138 | - results = manager.dispatch_plugins(:random_event) | |
138 | + results = manager.fetch_plugins(:random_event) | |
139 | 139 | |
140 | 140 | assert_includes results, Plugin2 |
141 | 141 | assert_includes results, Plugin3 |
... | ... | @@ -165,35 +165,7 @@ class PluginManagerTest < ActiveSupport::TestCase |
165 | 165 | |
166 | 166 | Plugin3.any_instance.expects(:random_event).never |
167 | 167 | |
168 | - assert_equal Plugin2, manager.first_plugin(:random_event) | |
169 | - end | |
170 | - | |
171 | - should 'dispatch_first method returns the first plugin response if there is many plugins to responde the event and the first one respond nil' do | |
172 | - | |
173 | - class Plugin1 < Noosfero::Plugin | |
174 | - def random_event | |
175 | - nil | |
176 | - end | |
177 | - end | |
178 | - | |
179 | - class Plugin2 < Noosfero::Plugin | |
180 | - def random_event | |
181 | - 'Plugin 2 action.' | |
182 | - end | |
183 | - end | |
184 | - | |
185 | - class Plugin3 < Noosfero::Plugin | |
186 | - def random_event | |
187 | - 'Plugin 3 action.' | |
188 | - end | |
189 | - end | |
190 | - | |
191 | - environment.stubs(:enabled_plugins).returns([Plugin1.to_s, Plugin2.to_s, Plugin3.to_s]) | |
192 | - | |
193 | - p2 = Plugin2.new | |
194 | - | |
195 | - assert_equal p2.random_event, plugins.dispatch_first(:random_event) | |
168 | + assert_equal Plugin2, manager.fetch_first_plugin(:random_event) | |
196 | 169 | end |
197 | 170 | |
198 | 171 | end |
199 | - | ... | ... |