diff options
author | Eric Davis <edavis@littlestreamsoftware.com> | 2009-12-16 02:07:46 +0000 |
---|---|---|
committer | Eric Davis <edavis@littlestreamsoftware.com> | 2009-12-16 02:07:46 +0000 |
commit | 39b44b1cb94f68514bf9ce7ae76ee7228bf6ce07 (patch) | |
tree | 2b5dab3d94e2285d7b6e84aa9c2a0c94ad82dfb5 /test | |
parent | 1c11d3403e4ed3518d51ef3d44cefc3cb1f6d548 (diff) | |
download | redmine-39b44b1cb94f68514bf9ce7ae76ee7228bf6ce07.tar.gz redmine-39b44b1cb94f68514bf9ce7ae76ee7228bf6ce07.zip |
Adds a Plugin API to allow one plugin to depend on another.
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@3175 e93f8b46-1217-0410-a6f0-8f06a7374b81
Diffstat (limited to 'test')
-rw-r--r-- | test/unit/lib/redmine/plugin_test.rb | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/test/unit/lib/redmine/plugin_test.rb b/test/unit/lib/redmine/plugin_test.rb index 234da14ea..57e2b985e 100644 --- a/test/unit/lib/redmine/plugin_test.rb +++ b/test/unit/lib/redmine/plugin_test.rb @@ -75,4 +75,43 @@ class Redmine::PluginTest < ActiveSupport::TestCase end end end + + def test_requires_redmine_plugin + test = self + other_version = '0.5.0' + + @klass.register :other do + name 'Other' + version other_version + end + + @klass.register :foo do + test.assert requires_redmine_plugin(:other, :version_or_higher => '0.1.0') + test.assert requires_redmine_plugin(:other, :version_or_higher => other_version) + test.assert requires_redmine_plugin(:other, other_version) + test.assert_raise Redmine::PluginRequirementError do + requires_redmine_plugin(:other, :version_or_higher => '99.0.0') + end + + test.assert requires_redmine_plugin(:other, :version => other_version) + test.assert requires_redmine_plugin(:other, :version => [other_version, '99.0.0']) + test.assert_raise Redmine::PluginRequirementError do + requires_redmine_plugin(:other, :version => '99.0.0') + end + test.assert_raise Redmine::PluginRequirementError do + requires_redmine_plugin(:other, :version => ['98.0.0', '99.0.0']) + end + # Missing plugin + test.assert_raise Redmine::PluginNotFound do + requires_redmine_plugin(:missing, :version_or_higher => '0.1.0') + end + test.assert_raise Redmine::PluginNotFound do + requires_redmine_plugin(:missing, '0.1.0') + end + test.assert_raise Redmine::PluginNotFound do + requires_redmine_plugin(:missing, :version => '0.1.0') + end + + end + end end |