]> git.openstreetmap.org Git - rails.git/blob - test/system/report_diary_entry_test.rb
Add frozen_string_literal comments to ruby files
[rails.git] / test / system / report_diary_entry_test.rb
1 # frozen_string_literal: true
2
3 require "application_system_test_case"
4
5 class ReportDiaryEntryTest < ApplicationSystemTestCase
6   def setup
7     create(:language, :code => "en")
8     @diary_entry = create(:diary_entry)
9   end
10
11   def test_no_link_when_not_logged_in
12     visit diary_entry_path(@diary_entry.user, @diary_entry)
13     assert_content @diary_entry.title
14
15     assert_no_content I18n.t("diary_entries.diary_entry.report")
16   end
17
18   def test_it_works
19     sign_in_as(create(:user))
20     visit diary_entry_path(@diary_entry.user, @diary_entry)
21     assert_content @diary_entry.title
22
23     click_on I18n.t("diary_entries.diary_entry.report")
24     assert_content "Report"
25     assert_content I18n.t("reports.new.disclaimer.intro")
26
27     choose I18n.t("reports.new.categories.diary_entry.spam_label")
28     fill_in "report_details", :with => "This is advertising"
29     assert_difference "Issue.count", 1 do
30       click_on "Create Report"
31     end
32
33     assert_content "Your report has been registered successfully"
34
35     assert_equal @diary_entry, Issue.last.reportable
36     assert_equal "administrator", Issue.last.assigned_role
37   end
38
39   def test_it_reopens_issue
40     issue = create(:issue, :reportable => @diary_entry)
41     issue.resolve!
42
43     sign_in_as(create(:user))
44     visit diary_entry_path(@diary_entry.user, @diary_entry)
45     assert_content @diary_entry.title
46
47     click_on I18n.t("diary_entries.diary_entry.report")
48     assert_content "Report"
49     assert_content I18n.t("reports.new.disclaimer.intro")
50
51     choose I18n.t("reports.new.categories.diary_entry.spam_label")
52     fill_in "report_details", :with => "This is advertising"
53     assert_no_difference "Issue.count" do
54       click_on "Create Report"
55     end
56
57     issue.reload
58     assert_not_predicate issue, :resolved?
59     assert_predicate issue, :open?
60   end
61 end