X-Git-Url: https://git.openstreetmap.org./rails.git/blobdiff_plain/46c183ffeb68a45e6e0793c813f2756109f40642..93a57af6aacdbc48ec5e24b3770fe6c1537f656a:/test/system/report_user_test.rb diff --git a/test/system/report_user_test.rb b/test/system/report_user_test.rb index dc6c51175..7b49f2997 100644 --- a/test/system/report_user_test.rb +++ b/test/system/report_user_test.rb @@ -6,25 +6,65 @@ class ReportUserTest < ApplicationSystemTestCase visit browse_note_path(note) assert page.has_content?(note.comments.first.body) - assert !page.has_content?(I18n.t("user.view.report")) + assert_not page.has_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") + click_on I18n.t("users.show.report") assert page.has_content? "Report" - assert page.has_content? I18n.t("issues.new.disclaimer.intro") + assert page.has_content? I18n.t("reports.new.disclaimer.intro") - choose I18n.t("reports.categories.user.vandal") + choose I18n.t("reports.new.categories.user.vandal_label") fill_in "report_details", :with => "This user is a vandal" - click_on "Create Report" + assert_difference "Issue.count", 1 do + click_on "Create Report" + end assert page.has_content? "Your report has been registered sucessfully" - assert_equal 1, Issue.count - assert Issue.last.reportable == user + 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 page.has_content? "Report" + assert page.has_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 page.has_content? "Your report has been registered sucessfully" + + 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 page.has_content? "Report" + assert page.has_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 page.has_content? "Your report has been registered sucessfully" + + assert_equal user, Issue.last.reportable + assert_equal "administrator", Issue.last.assigned_role end end