Skip to content

Commit

Permalink
[#1251] Fix TestPlugins.test_plugin_loading_order
Browse files Browse the repository at this point in the history
We used to check if the plugins are loaded in the correct order by removing the
last loaded plugins from the array. That used to be 2, but as we created new
plugins, this isn't true anymore.

To make the test more stable, I've changed it to not depend on the number of
plugins loaded before the ones we're interested in testing.
  • Loading branch information
vitorbaptista committed Dec 18, 2013
1 parent 21ed9a3 commit f4af92d
Showing 1 changed file with 5 additions and 4 deletions.
9 changes: 5 additions & 4 deletions ckan/tests/test_plugins.py
Expand Up @@ -118,22 +118,23 @@ def test_plugin_loading_order(self):

expected_order = _make_calls(plugins.get_plugin('mapper_plugin'),
plugins.get_plugin('mapper_plugin2'))
assert observerplugin.before_load.calls[:-2] == expected_order

assert observerplugin.before_load.calls[:2] == expected_order
expected_order = _make_calls(plugins.get_plugin('test_observer_plugin'),
plugins.get_plugin('mapper_plugin'),
plugins.get_plugin('mapper_plugin2'))
assert observerplugin.after_load.calls[:-2] == expected_order
assert observerplugin.after_load.calls[:3] == expected_order

config['ckan.plugins'] = 'test_observer_plugin mapper_plugin2 mapper_plugin'
plugins.load_all(config)

expected_order = _make_calls(plugins.get_plugin('mapper_plugin2'),
plugins.get_plugin('mapper_plugin'))
assert observerplugin.before_load.calls[:-2] == expected_order
assert observerplugin.before_load.calls[:2] == expected_order
expected_order = _make_calls(plugins.get_plugin('test_observer_plugin'),
plugins.get_plugin('mapper_plugin2'),
plugins.get_plugin('mapper_plugin'))
assert observerplugin.after_load.calls[:-2] == expected_order
assert observerplugin.after_load.calls[:3] == expected_order
# cleanup
config['ckan.plugins'] = config_plugins
plugins.load_all(config)
Expand Down

0 comments on commit f4af92d

Please sign in to comment.