X-Git-Url: https://git.openstreetmap.org/rails.git/blobdiff_plain/29f12c454799ed62745803f2d8423d9c59ed1a93..b5dd8c19b9b9c4bbb09e07f6c4898ebb52b06b39:/test/system/report_user_test.rb?ds=inline
diff --git a/test/system/report_user_test.rb b/test/system/report_user_test.rb
index 758c91eda..7a9e800c8 100644
--- a/test/system/report_user_test.rb
+++ b/test/system/report_user_test.rb
@@ -3,29 +3,68 @@ require "application_system_test_case"
class ReportUserTest < ApplicationSystemTestCase
def test_no_link_when_not_logged_in
note = create(:note_with_comments)
- visit browse_note_path(note)
- assert page.has_content?(note.comments.first.body)
+ visit note_path(note)
+ assert_content note.comments.first.body
- assert_not page.has_content?(I18n.t("user.view.report"))
+ assert_no_content I18n.t("users.show.report")
end
def test_can_report_user
user = create(:user)
sign_in_as(create(:user))
- visit user_path(user.display_name)
+ visit user_path(user)
- click_on I18n.t("user.view.report")
- assert page.has_content? "Report"
- assert page.has_content? I18n.t("reports.new.disclaimer.intro")
+ click_on I18n.t("users.show.report")
+ assert_content "Report"
+ assert_content I18n.t("reports.new.disclaimer.intro")
- choose I18n.t("reports.new.categories.user.vandal")
+ choose I18n.t("reports.new.categories.user.vandal_label")
fill_in "report_details", :with => "This user is a vandal"
assert_difference "Issue.count", 1 do
click_on "Create Report"
end
- assert page.has_content? "Your report has been registered sucessfully"
+ assert_content "Your report has been registered successfully"
assert_equal user, Issue.last.reportable
+ assert_equal "moderator", Issue.last.assigned_role
+ end
+
+ def test_it_promotes_issues
+ user = create(:user)
+ sign_in_as(create(:user))
+ visit user_path(user)
+
+ click_on I18n.t("users.show.report")
+ assert_content "Report"
+ assert_content I18n.t("reports.new.disclaimer.intro")
+
+ choose I18n.t("reports.new.categories.user.vandal_label")
+ fill_in "report_details", :with => "This user is a vandal"
+ assert_difference "Issue.count", 1 do
+ click_on "Create Report"
+ end
+
+ assert_content "Your report has been registered successfully"
+
+ assert_equal user, Issue.last.reportable
+ assert_equal "moderator", Issue.last.assigned_role
+
+ visit user_path(user)
+
+ click_on I18n.t("users.show.report")
+ assert_content "Report"
+ assert_content I18n.t("reports.new.disclaimer.intro")
+
+ choose I18n.t("reports.new.categories.user.spam_label")
+ fill_in "report_details", :with => "This user is a spammer"
+ assert_no_difference "Issue.count" do
+ click_on "Create Report"
+ end
+
+ assert_content "Your report has been registered successfully"
+
+ assert_equal user, Issue.last.reportable
+ assert_equal "administrator", Issue.last.assigned_role
end
end