diff --git a/.github/workflows/smoke-checks.yml b/.github/workflows/smoke-checks.yml index babfcf2cea..a24f7570f4 100644 --- a/.github/workflows/smoke-checks.yml +++ b/.github/workflows/smoke-checks.yml @@ -26,7 +26,7 @@ env: jobs: build-test-app-and-frameworks: name: Build Test App and Frameworks - runs-on: macos-14 + runs-on: macos-15 if: ${{ github.event_name != 'push' }} steps: - uses: actions/checkout@v4.1.1 @@ -35,8 +35,6 @@ jobs: - name: Build run: bundle exec fastlane build_test_app_and_frameworks timeout-minutes: 60 - env: - XCODE_VERSION: "15.0.1" # Should match the minimum version in dependent jobs - uses: actions/upload-artifact@v4 if: success() with: diff --git a/StreamChatUITestsAppUITests/Tests/QuotedReply_Tests.swift b/StreamChatUITestsAppUITests/Tests/QuotedReply_Tests.swift index bba27cdc50..dfe2a96453 100644 --- a/StreamChatUITestsAppUITests/Tests/QuotedReply_Tests.swift +++ b/StreamChatUITestsAppUITests/Tests/QuotedReply_Tests.swift @@ -3,6 +3,7 @@ // import XCTest +@testable import StreamChatUI final class QuotedReply_Tests: StreamTestCase { @@ -217,6 +218,29 @@ final class QuotedReply_Tests: StreamTestCase { userRobot.assertDeletedMessage() } } + + func test_originalQuoteIsDeletedByParticipant_deletedMessageIsShown() { + linkToScenario(withId: 6643) + + GIVEN("user opens the channel") { + userRobot.login().openChannel() + } + AND("participant sends a message") { + participantRobot.sendMessage("1") + } + AND("user adds a quoted reply") { + userRobot.quoteMessage(replyText) + } + WHEN("participant deletes an original message") { + participantRobot.deleteMessage() + } + THEN("deleted message is shown") { + userRobot.assertDeletedMessage(at: 1) + } + AND("deleted message is shown in quoted reply bubble") { + userRobot.assertQuotedMessage(L10n.Message.deletedMessagePlaceholder) + } + } func test_quotedReplyIsDeletedByUser_deletedMessageIsShown() { linkToScenario(withId: 109) @@ -235,6 +259,27 @@ final class QuotedReply_Tests: StreamTestCase { userRobot.assertDeletedMessage() } } + + func test_originalQuoteIsDeletedByUser_deletedMessageIsShown() { + linkToScenario(withId: 6644) + + GIVEN("user opens the channel") { + backendRobot.generateChannels(count: 1, messagesCount: 1) + userRobot.login().openChannel() + } + AND("user adds a quoted reply") { + userRobot.quoteMessage(replyText) + } + WHEN("user deletes an original message") { + userRobot.deleteMessage(messageCellIndex: 1) + } + THEN("deleted message is shown") { + userRobot.assertDeletedMessage(at: 1) + } + AND("deleted message is shown in quoted reply bubble") { + userRobot.assertQuotedMessage(L10n.Message.deletedMessagePlaceholder) + } + } func test_unreadCount_whenUserSendsInvalidCommand_and_jumpingOnQuotedMessage() { linkToScenario(withId: 1676) @@ -537,6 +582,30 @@ final class QuotedReply_Tests: StreamTestCase { userRobot.openThread().assertDeletedMessage() } } + + func test_originalQuoteIsDeletedByParticipant_deletedMessageIsShown_InThread() { + linkToScenario(withId: 6645) + + GIVEN("user opens the channel") { + backendRobot.generateChannels(count: 1, messageText: parentText, messagesCount: 1) + userRobot.login().openChannel() + } + AND("participant sends a message") { + participantRobot.replyToMessageInThread("1") + } + AND("user adds a quoted reply") { + userRobot.openThread().quoteMessage(replyText) + } + WHEN("participant deletes an original message") { + participantRobot.deleteMessage() + } + THEN("deleted message is shown") { + userRobot.assertDeletedMessage(at: 1) + } + AND("deleted message is shown in quoted reply bubble") { + userRobot.assertQuotedMessage(L10n.Message.deletedMessagePlaceholder) + } + } func test_quotedReplyIsDeletedByUser_deletedMessageIsShown_InThread() { linkToScenario(withId: 1965) @@ -555,6 +624,27 @@ final class QuotedReply_Tests: StreamTestCase { userRobot.assertDeletedMessage() } } + + func test_originalQuoteIsDeletedByUser_deletedMessageIsShown_InThread() { + linkToScenario(withId: 6646) + + GIVEN("user opens the channel") { + backendRobot.generateChannels(count: 1, messagesCount: 1) + userRobot.login().openChannel() + } + AND("user adds a quoted reply") { + userRobot.openThread().quoteMessage(replyText) + } + WHEN("user deletes an original message") { + userRobot.deleteMessage(messageCellIndex: 1) + } + THEN("deleted message is shown") { + userRobot.assertDeletedMessage(at: 1) + } + AND("deleted message is shown in quoted reply bubble") { + userRobot.assertQuotedMessage(L10n.Message.deletedMessagePlaceholder) + } + } func test_rootMessageShouldOnlyBeVisibleInTheLastPageInThread() { linkToScenario(withId: 1997)