+ assert_equal Issue.count,1
+ assert_response :redirect
+ assert_redirected_to root_path
+
+ # Create a report for an existing Issue
+ get :new, {reportable_id: 1, reportable_type: "User", reported_user_id: 2}
+ assert_response :success
+ assert_no_difference "Issue.count" do
+ details = "Details of another report under the same issue"
+ post :create, { :report => { :details => details},
+ :report_type => "[OFFENSIVE]",
+ :issue => { reportable_id: 1, reportable_type: "User", reported_user_id: 2} }
+ end
+ assert_response :redirect
+ assert_equal Issue.find_by_reportable_id_and_reportable_type(1,"User").reports.count,2
+ end
+
+ def test_change_status_by_normal_user
+ # Login as normal user
+ session[:user] = users(:normal_user).id
+
+ # Create Issue
+ test_new_issue_after_login
+ assert_equal Issue.count,1
+
+ get :resolve, id: Issue.find_by_reportable_id_and_reportable_type(1,"User").id
+
+ assert_response :redirect
+ assert_redirected_to root_path
+ end
+
+ def test_change_status_by_admin
+ # Login as normal user
+ session[:user] = users(:normal_user).id
+
+ # Create Issue
+ test_new_issue_after_login
+ assert_equal Issue.count,1