1 # frozen_string_literal: true
 
   3 require "application_system_test_case"
 
   5 class ReportDiaryCommentTest < ApplicationSystemTestCase
 
   7     create(:language, :code => "en")
 
   8     @diary_entry = create(:diary_entry)
 
   9     @comment = create(:diary_comment, :diary_entry => @diary_entry)
 
  12   def test_no_link_when_not_logged_in
 
  13     visit diary_entry_path(@diary_entry.user, @diary_entry)
 
  14     assert_content @comment.body
 
  16     assert_no_content I18n.t("diary_entries.diary_comment.report")
 
  20     sign_in_as(create(:user))
 
  21     visit diary_entry_path(@diary_entry.user, @diary_entry)
 
  22     assert_content @diary_entry.title
 
  24     click_on I18n.t("diary_entries.diary_comment.report")
 
  25     assert_content "Report"
 
  26     assert_content I18n.t("reports.new.disclaimer.intro")
 
  28     choose I18n.t("reports.new.categories.diary_comment.spam_label")
 
  29     fill_in "report_details", :with => "This comment is spam"
 
  30     assert_difference "Issue.count", 1 do
 
  31       click_on "Create Report"
 
  34     assert_content "Your report has been registered successfully"
 
  36     assert_equal @comment, Issue.last.reportable
 
  37     assert_equal "administrator", Issue.last.assigned_role