# frozen_string_literal: true describe "Reviewables", type: :system do fab!(:current_user) { Fabricate(:admin) } fab!(:channel_1) { Fabricate(:chat_channel) } fab!(:message_1) { Fabricate(:chat_message, chat_channel: channel_1) } before do chat_system_bootstrap(current_user) channel_1.add(current_user) sign_in(current_user) Chat::ReviewQueue.new.flag_message( message_1, current_user.guardian, ReviewableScore.types[:spam], ) end context "when visiting reviews for messages " do it "lists the correct message" do visit("/review?type=Chat%3A%3AReviewableMessage") expect(page).to have_content(message_1.message) end end context "when the message is hard deleted" do before { message_1.destroy! } it "does not throw an error" do visit("/review?type=Chat%3A%3AReviewableMessage") expect(page).to have_selector(".reviewable-item.reviewable-chat-message") end it "adds the option to ignore the flag" do visit("/review?type=Chat%3A%3AReviewableMessage") expect(page).to have_selector(".reviewable-actions .chat-message-ignore") end end end