point_rules_test.rb
1.04 KB
require_relative "../test_helper"
class PointRulesTest < ActiveSupport::TestCase
def setup
@environment = Environment.default
@point_rules = Merit::PointRules.new(@environment)
end
attr_accessor :environment, :point_rules
should 'not define rules when environment is nil' do
point_rules = Merit::PointRules.new
assert point_rules.defined_rules.blank?
end
should 'define rules when environment is present' do
assert point_rules.defined_rules.present?
end
should 'weight returns the default value when value is not setted in environment' do
Merit::PointRules::AVAILABLE_RULES.each do |category, setting|
assert_equal setting[:default_weight], point_rules.weight(category)
end
end
should 'weight returns value from environment when it is setted' do
settings = Noosfero::Plugin::Settings.new(environment, GamificationPlugin, {})
settings.set_setting(:point_rules, {'comment_author' => {'weight' => '500'}})
settings.save!
assert_equal 500, point_rules.weight(:comment_author)
end
end