openstreetmap-website/test/models/issue_test.rb
2018-02-28 14:39:40 +08:00

46 lines
1.2 KiB
Ruby

require "test_helper"
class IssueTest < ActiveSupport::TestCase
def test_reported_user
note = create(:note_comment, :author => create(:user)).note
user = create(:user)
create(:language, :code => "en")
diary_entry = create(:diary_entry)
issue = Issue.new
issue.reportable = user
issue.save!
assert_equal issue.reported_user, user
# FIXME: doesn't handle anonymous notes
issue.reportable = note
issue.save!
assert_equal issue.reported_user, note.author
issue.reportable = diary_entry
issue.save!
assert_equal issue.reported_user, diary_entry.user
end
def test_default_assigned_role
create(:language, :code => "en")
diary_entry = create(:diary_entry)
note = create(:note_with_comments)
issue = Issue.new
issue.reportable = diary_entry
issue.save!
assert_equal "administrator", issue.assigned_role
issue = Issue.new
issue.reportable = note
issue.save!
assert_equal "moderator", issue.assigned_role
# check the callback doesn't override an explicitly set role
issue.assigned_role = "administrator"
issue.save!
issue.reload
assert_equal "administrator", issue.assigned_role
end
end