Commit 83258948c75e95d3af37fa0f9040e2fbb06c8037
1 parent
661ce54e
Exists in
master
and in
22 other branches
Renamed plugin manager test
Showing
2 changed files
with
58 additions
and
58 deletions
Show diff stats
test/unit/manager_test.rb
| ... | ... | @@ -1,58 +0,0 @@ |
| 1 | -require File.dirname(__FILE__) + '/../test_helper' | |
| 2 | - | |
| 3 | -class ManagerTest < Test::Unit::TestCase | |
| 4 | - | |
| 5 | - def setup | |
| 6 | - @environment = Environment.default | |
| 7 | - @controller = mock() | |
| 8 | - @controller.stubs(:profile).returns() | |
| 9 | - @controller.stubs(:request).returns() | |
| 10 | - @controller.stubs(:response).returns() | |
| 11 | - @controller.stubs(:environment).returns(@environment) | |
| 12 | - @controller.stubs(:params).returns() | |
| 13 | - @manager = Noosfero::Plugin::Manager.new(@controller) | |
| 14 | - end | |
| 15 | - attr_reader :environment | |
| 16 | - attr_reader :manager | |
| 17 | - | |
| 18 | - should 'return the intersection between environment\'s enabled plugins and system available plugins' do | |
| 19 | - class Plugin1 < Noosfero::Plugin; end; | |
| 20 | - class Plugin2 < Noosfero::Plugin; end; | |
| 21 | - class Plugin3 < Noosfero::Plugin; end; | |
| 22 | - class Plugin4 < Noosfero::Plugin; end; | |
| 23 | - environment.stubs(:enabled_plugins).returns([Plugin1.to_s, Plugin2.to_s, Plugin4.to_s]) | |
| 24 | - Noosfero::Plugin.stubs(:all).returns([Plugin1.to_s, Plugin3.to_s, Plugin4.to_s]) | |
| 25 | - plugins = manager.enabled_plugins.map { |instance| instance.class.to_s } | |
| 26 | - assert_equal [Plugin1.to_s, Plugin4.to_s], plugins | |
| 27 | - end | |
| 28 | - | |
| 29 | - should 'map events to registered plugins' do | |
| 30 | - | |
| 31 | - class Noosfero::Plugin | |
| 32 | - def random_event | |
| 33 | - nil | |
| 34 | - end | |
| 35 | - end | |
| 36 | - | |
| 37 | - class Plugin1 < Noosfero::Plugin | |
| 38 | - def random_event | |
| 39 | - 'Plugin 1 action.' | |
| 40 | - end | |
| 41 | - end | |
| 42 | - | |
| 43 | - class Plugin2 < Noosfero::Plugin | |
| 44 | - def random_event | |
| 45 | - 'Plugin 2 action.' | |
| 46 | - end | |
| 47 | - end | |
| 48 | - | |
| 49 | - environment.stubs(:enabled_plugins).returns([Plugin1.to_s, Plugin2.to_s]) | |
| 50 | - | |
| 51 | - p1 = Plugin1.new | |
| 52 | - p2 = Plugin2.new | |
| 53 | - | |
| 54 | - assert_equal [p1.random_event, p2.random_event], manager.map(:random_event) | |
| 55 | - end | |
| 56 | - | |
| 57 | -end | |
| 58 | - |
| ... | ... | @@ -0,0 +1,58 @@ |
| 1 | +require File.dirname(__FILE__) + '/../test_helper' | |
| 2 | + | |
| 3 | +class PluginManagerTest < Test::Unit::TestCase | |
| 4 | + | |
| 5 | + def setup | |
| 6 | + @environment = Environment.default | |
| 7 | + @controller = mock() | |
| 8 | + @controller.stubs(:profile).returns() | |
| 9 | + @controller.stubs(:request).returns() | |
| 10 | + @controller.stubs(:response).returns() | |
| 11 | + @controller.stubs(:environment).returns(@environment) | |
| 12 | + @controller.stubs(:params).returns() | |
| 13 | + @manager = Noosfero::Plugin::Manager.new(@controller) | |
| 14 | + end | |
| 15 | + attr_reader :environment | |
| 16 | + attr_reader :manager | |
| 17 | + | |
| 18 | + should 'return the intersection between environment\'s enabled plugins and system available plugins' do | |
| 19 | + class Plugin1 < Noosfero::Plugin; end; | |
| 20 | + class Plugin2 < Noosfero::Plugin; end; | |
| 21 | + class Plugin3 < Noosfero::Plugin; end; | |
| 22 | + class Plugin4 < Noosfero::Plugin; end; | |
| 23 | + environment.stubs(:enabled_plugins).returns([Plugin1.to_s, Plugin2.to_s, Plugin4.to_s]) | |
| 24 | + Noosfero::Plugin.stubs(:all).returns([Plugin1.to_s, Plugin3.to_s, Plugin4.to_s]) | |
| 25 | + plugins = manager.enabled_plugins.map { |instance| instance.class.to_s } | |
| 26 | + assert_equal [Plugin1.to_s, Plugin4.to_s], plugins | |
| 27 | + end | |
| 28 | + | |
| 29 | + should 'map events to registered plugins' do | |
| 30 | + | |
| 31 | + class Noosfero::Plugin | |
| 32 | + def random_event | |
| 33 | + nil | |
| 34 | + end | |
| 35 | + end | |
| 36 | + | |
| 37 | + class Plugin1 < Noosfero::Plugin | |
| 38 | + def random_event | |
| 39 | + 'Plugin 1 action.' | |
| 40 | + end | |
| 41 | + end | |
| 42 | + | |
| 43 | + class Plugin2 < Noosfero::Plugin | |
| 44 | + def random_event | |
| 45 | + 'Plugin 2 action.' | |
| 46 | + end | |
| 47 | + end | |
| 48 | + | |
| 49 | + environment.stubs(:enabled_plugins).returns([Plugin1.to_s, Plugin2.to_s]) | |
| 50 | + | |
| 51 | + p1 = Plugin1.new | |
| 52 | + p2 = Plugin2.new | |
| 53 | + | |
| 54 | + assert_equal [p1.random_event, p2.random_event], manager.map(:random_event) | |
| 55 | + end | |
| 56 | + | |
| 57 | +end | |
| 58 | + | ... | ... |