|
|
@@ -0,0 +1,51 @@ |
|
|
|
# Redmine - project management software |
|
|
|
# Copyright (C) 2006-2008 Jean-Philippe Lang |
|
|
|
# |
|
|
|
# This program is free software; you can redistribute it and/or |
|
|
|
# modify it under the terms of the GNU General Public License |
|
|
|
# as published by the Free Software Foundation; either version 2 |
|
|
|
# of the License, or (at your option) any later version. |
|
|
|
# |
|
|
|
# This program is distributed in the hope that it will be useful, |
|
|
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
|
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
|
|
# GNU General Public License for more details. |
|
|
|
# |
|
|
|
# You should have received a copy of the GNU General Public License |
|
|
|
# along with this program; if not, write to the Free Software |
|
|
|
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. |
|
|
|
|
|
|
|
require File.dirname(__FILE__) + '/../../../test_helper' |
|
|
|
|
|
|
|
class Redmine::PluginTest < Test::Unit::TestCase |
|
|
|
|
|
|
|
def setup |
|
|
|
@klass = Redmine::Plugin |
|
|
|
# In case some real plugins are installed |
|
|
|
@klass.clear |
|
|
|
end |
|
|
|
|
|
|
|
def teardown |
|
|
|
@klass.clear |
|
|
|
end |
|
|
|
|
|
|
|
def test_register |
|
|
|
@klass.register :foo do |
|
|
|
name 'Foo plugin' |
|
|
|
author 'John Smith' |
|
|
|
description 'This is a test plugin' |
|
|
|
version '0.0.1' |
|
|
|
settings :default => {'sample_setting' => 'value', 'foo'=>'bar'}, :partial => 'foo/settings' |
|
|
|
end |
|
|
|
|
|
|
|
assert_equal 1, @klass.all.size |
|
|
|
|
|
|
|
plugin = @klass.find('foo') |
|
|
|
assert plugin.is_a?(Redmine::Plugin) |
|
|
|
assert_equal :foo, plugin.id |
|
|
|
assert_equal 'Foo plugin', plugin.name |
|
|
|
assert_equal 'John Smith', plugin.author |
|
|
|
assert_equal 'This is a test plugin', plugin.description |
|
|
|
assert_equal '0.0.1', plugin.version |
|
|
|
end |
|
|
|
end |