# frozen_string_literal: true RSpec.describe UserArchivedMessage do fab!(:user) { Fabricate(:user) } fab!(:user_2) { Fabricate(:user) } fab!(:private_message) do create_post( user: user, skip_validations: true, target_usernames: [user_2.username, user.username].join(","), archetype: Archetype.private_message, ).topic end describe ".move_to_inbox!" do it "moves topic back to inbox correctly" do UserArchivedMessage.archive!(user.id, private_message) expect do UserArchivedMessage.move_to_inbox!(user.id, private_message) end.to change { private_message.message_archived?(user) }.from(true).to(false) end it "does not move archived muted messages back to inbox" do UserArchivedMessage.archive!(user.id, private_message) expect(private_message.message_archived?(user)).to eq(true) TopicUser.change( user.id, private_message.id, notification_level: TopicUser.notification_levels[:muted], ) UserArchivedMessage.move_to_inbox!(user.id, private_message) expect(private_message.message_archived?(user)).to eq(true) end end end