diff --git a/.github/workflows/cron-checks.yml b/.github/workflows/cron-checks.yml index 81c08708879..b89bdcdadd8 100644 --- a/.github/workflows/cron-checks.yml +++ b/.github/workflows/cron-checks.yml @@ -41,8 +41,8 @@ jobs: strategy: matrix: include: - - ios: 18.1 - xcode: 16.1 # fails on 16.2 + - ios: 18.2 + xcode: 16.2 os: macos-15 device: "iPhone 16 Pro" setup_runtime: false diff --git a/.github/workflows/smoke-checks.yml b/.github/workflows/smoke-checks.yml index 5c3e01ccd4e..ebc6835a0ad 100644 --- a/.github/workflows/smoke-checks.yml +++ b/.github/workflows/smoke-checks.yml @@ -182,8 +182,6 @@ jobs: - build-test-app-and-frameworks env: LAUNCH_ID: ${{ needs.allure_testops_launch.outputs.launch_id }} - XCODE_VERSION: "16.1" # fails on 16.2 - IOS_SIMULATOR_DEVICE: "iPhone 16 Pro (18.1)" strategy: matrix: batch: [0, 1] diff --git a/CHANGELOG.md b/CHANGELOG.md index b5c65a6d55d..1fa8ddbd5e8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,19 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). ### 🔄 Changed +# [4.75.0](https://github.com/GetStream/stream-chat-swift/releases/tag/4.75.0) +_March 26, 2025_ + +## StreamChat +### 🐞 Fixed +- Fix draft local attachments erased when the draft updated event is triggered [#3625](https://github.com/GetStream/stream-chat-swift/pull/3625) +- Fix background tasks not running in `IOSBackgroundTaskScheduler` sometimes [#3628](https://github.com/GetStream/stream-chat-swift/pull/3628) + +### StreamChatUI +### 🐞 Fixed +- Fix composer content not cleared when draft deleted event is triggered [#3626](https://github.com/GetStream/stream-chat-swift/pull/3626) +- Set `ColorPalette.text` to `titleLabel` in `ChatChannelListItemView` [#3629](https://github.com/GetStream/stream-chat-swift/pull/3629) + # [4.74.0](https://github.com/GetStream/stream-chat-swift/releases/tag/4.74.0) _March 14, 2025_ @@ -16,7 +29,7 @@ _March 14, 2025_ - Add `ChatChannelController.loadChannelReads()`, - Add `ChatChannelController.loadMoreChannelReads()` - Add `Chat.loadMembers()` - - Add `Chat.loadMoreMembers() + - Add `Chat.loadMoreMembers()` ### 🐞 Fixed - Fix background task warning by making task tracking thread-safe [#3604](https://github.com/GetStream/stream-chat-swift/pull/3604) - Fix an issue where `ChatRemoteNotificationHandler` can lead to persistent store's data inconsistencies [#3601](https://github.com/GetStream/stream-chat-swift/pull/3601) diff --git a/Gemfile.lock b/Gemfile.lock index 0cd272c9a70..5ef15e979cd 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -295,7 +295,7 @@ GEM netrc (0.11.0) nio4r (2.7.3) nkf (0.2.0) - nokogiri (1.18.3) + nokogiri (1.18.4) mini_portile2 (~> 2.8.2) racc (~> 1.4) octokit (9.1.0) diff --git a/Sources/StreamChat/Database/DTOs/MessageDTO.swift b/Sources/StreamChat/Database/DTOs/MessageDTO.swift index cc2021aff60..83c8ff2bfe5 100644 --- a/Sources/StreamChat/Database/DTOs/MessageDTO.swift +++ b/Sources/StreamChat/Database/DTOs/MessageDTO.swift @@ -1134,9 +1134,6 @@ extension NSManagedObjectContext: MessageDatabaseSession { throw ClientError.CurrentUserDoesNotExist() } - // Delete existing draft message if it exists. - deleteDraftMessage(in: cid, threadId: payload.parentId) - let dto = MessageDTO.loadOrCreate(id: draftDetailsPayload.id, context: self, cache: cache) dto.cid = cid.rawValue dto.text = draftDetailsPayload.text diff --git a/Sources/StreamChat/Generated/SystemEnvironment+Version.swift b/Sources/StreamChat/Generated/SystemEnvironment+Version.swift index ef1692d70be..a631a64f1b2 100644 --- a/Sources/StreamChat/Generated/SystemEnvironment+Version.swift +++ b/Sources/StreamChat/Generated/SystemEnvironment+Version.swift @@ -7,5 +7,5 @@ import Foundation extension SystemEnvironment { /// A Stream Chat version. - public static let version: String = "4.74.0" + public static let version: String = "4.75.0" } diff --git a/Sources/StreamChat/Info.plist b/Sources/StreamChat/Info.plist index 6584f13e3cf..1ea33a25173 100644 --- a/Sources/StreamChat/Info.plist +++ b/Sources/StreamChat/Info.plist @@ -15,7 +15,7 @@ CFBundlePackageType $(PRODUCT_BUNDLE_PACKAGE_TYPE) CFBundleShortVersionString - 4.74.0 + 4.75.0 CFBundleVersion $(CURRENT_PROJECT_VERSION) diff --git a/Sources/StreamChat/WebSocketClient/BackgroundTaskScheduler.swift b/Sources/StreamChat/WebSocketClient/BackgroundTaskScheduler.swift index 2dc99fd3a43..a203485a4c2 100644 --- a/Sources/StreamChat/WebSocketClient/BackgroundTaskScheduler.swift +++ b/Sources/StreamChat/WebSocketClient/BackgroundTaskScheduler.swift @@ -24,7 +24,7 @@ protocol BackgroundTaskScheduler { import UIKit class IOSBackgroundTaskScheduler: BackgroundTaskScheduler { - private let app: UIApplication? = { + private lazy var app: UIApplication? = { // We can't use `UIApplication.shared` directly because there's no way to convince the compiler // this code is accessible only for non-extension executables. UIApplication.value(forKeyPath: "sharedApplication") as? UIApplication @@ -35,7 +35,6 @@ class IOSBackgroundTaskScheduler: BackgroundTaskScheduler { private let queue = DispatchQueue(label: "io.getstream.IOSBackgroundTaskScheduler", target: .global()) var isAppActive: Bool { - let app = self.app if Thread.isMainThread { return app?.applicationState == .active } @@ -44,7 +43,7 @@ class IOSBackgroundTaskScheduler: BackgroundTaskScheduler { let group = DispatchGroup() group.enter() DispatchQueue.main.async { - isActive = app?.applicationState == .active + isActive = self.app?.applicationState == .active group.leave() } group.wait() diff --git a/Sources/StreamChatUI/ChatChannel/ChatChannelVC.swift b/Sources/StreamChatUI/ChatChannel/ChatChannelVC.swift index ecda5d0d85c..35c34f74810 100644 --- a/Sources/StreamChatUI/ChatChannel/ChatChannelVC.swift +++ b/Sources/StreamChatUI/ChatChannel/ChatChannelVC.swift @@ -584,9 +584,14 @@ open class ChatChannelVC: _ViewController, if let draftUpdatedEvent = event as? DraftUpdatedEvent, let draft = channelController.channel?.draftMessage, - draftUpdatedEvent.cid == channelController.cid { + draftUpdatedEvent.cid == channelController.cid, draftUpdatedEvent.draftMessage.threadId == nil { messageComposerVC.content.draftMessage(draft) } + + if let draftDeletedEvent = event as? DraftDeletedEvent, + draftDeletedEvent.cid == channelController.cid, draftDeletedEvent.threadId == nil { + messageComposerVC.content.clear() + } } // MARK: - AudioQueuePlayerDatasource diff --git a/Sources/StreamChatUI/ChatChannelList/ChatChannelListItemView.swift b/Sources/StreamChatUI/ChatChannelList/ChatChannelListItemView.swift index 215f236c801..cde59ebc003 100644 --- a/Sources/StreamChatUI/ChatChannelList/ChatChannelListItemView.swift +++ b/Sources/StreamChatUI/ChatChannelList/ChatChannelListItemView.swift @@ -248,6 +248,7 @@ open class ChatChannelListItemView: _View, ThemeProvider, SwiftUIRepresentable { super.setUpAppearance() backgroundColor = contentBackgroundColor + titleLabel.textColor = appearance.colorPalette.text titleLabel.font = appearance.fonts.bodyBold subtitleLabel.textColor = appearance.colorPalette.subtitleText diff --git a/Sources/StreamChatUI/ChatThread/ChatThreadVC.swift b/Sources/StreamChatUI/ChatThread/ChatThreadVC.swift index f76727b92ac..f3affa2d4bd 100644 --- a/Sources/StreamChatUI/ChatThread/ChatThreadVC.swift +++ b/Sources/StreamChatUI/ChatThread/ChatThreadVC.swift @@ -493,6 +493,8 @@ open class ChatThreadVC: _ViewController, if let draft = messageController.message?.draftReply { messageComposerVC.content.draftMessage(draft) } + case let event as DraftDeletedEvent where event.threadId == messageController.messageId: + messageComposerVC.content.clear() default: break } diff --git a/Sources/StreamChatUI/Info.plist b/Sources/StreamChatUI/Info.plist index 6584f13e3cf..1ea33a25173 100644 --- a/Sources/StreamChatUI/Info.plist +++ b/Sources/StreamChatUI/Info.plist @@ -15,7 +15,7 @@ CFBundlePackageType $(PRODUCT_BUNDLE_PACKAGE_TYPE) CFBundleShortVersionString - 4.74.0 + 4.75.0 CFBundleVersion $(CURRENT_PROJECT_VERSION) diff --git a/StreamChat-XCFramework.podspec b/StreamChat-XCFramework.podspec index a0c69c30239..dfd70386d6b 100644 --- a/StreamChat-XCFramework.podspec +++ b/StreamChat-XCFramework.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |spec| spec.name = "StreamChat-XCFramework" - spec.version = "4.74.0" + spec.version = "4.75.0" spec.summary = "StreamChat iOS Client" spec.description = "stream-chat-swift is the official Swift client for Stream Chat, a service for building chat applications." diff --git a/StreamChat.podspec b/StreamChat.podspec index c4c5f832869..abc052b0758 100644 --- a/StreamChat.podspec +++ b/StreamChat.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |spec| spec.name = "StreamChat" - spec.version = "4.74.0" + spec.version = "4.75.0" spec.summary = "StreamChat iOS Chat Client" spec.description = "stream-chat-swift is the official Swift client for Stream Chat, a service for building chat applications." diff --git a/StreamChatArtifacts.json b/StreamChatArtifacts.json index 3c0abf6bf86..9d720f860f2 100644 --- a/StreamChatArtifacts.json +++ b/StreamChatArtifacts.json @@ -1 +1 @@ -{"4.7.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.7.0/StreamChat-All.zip","4.8.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.8.0/StreamChat-All.zip","4.9.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.9.0/StreamChat-All.zip","4.10.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.10.0/StreamChat-All.zip","4.10.1":"https://github.com/GetStream/stream-chat-swift/releases/download/4.10.1/StreamChat-All.zip","4.11.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.11.0/StreamChat-All.zip","4.12.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.12.0/StreamChat-All.zip","4.13.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.13.0/StreamChat-All.zip","4.13.1":"https://github.com/GetStream/stream-chat-swift/releases/download/4.13.1/StreamChat-All.zip","4.14.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.14.0/StreamChat-All.zip","4.15.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.15.0/StreamChat-All.zip","4.15.1":"https://github.com/GetStream/stream-chat-swift/releases/download/4.15.1/StreamChat-All.zip","4.16.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.16.0/StreamChat-All.zip","4.17.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.17.0/StreamChat-All.zip","4.18.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.18.0/StreamChat-All.zip","4.19.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.19.0/StreamChat-All.zip","4.20.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.20.0/StreamChat-All.zip","4.21.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.21.0/StreamChat-All.zip","4.21.1":"https://github.com/GetStream/stream-chat-swift/releases/download/4.21.1/StreamChat-All.zip","4.21.2":"https://github.com/GetStream/stream-chat-swift/releases/download/4.21.2/StreamChat-All.zip","4.22.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.22.0/StreamChat-All.zip","4.23.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.23.0/StreamChat-All.zip","4.24.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.24.0/StreamChat-All.zip","4.24.1":"https://github.com/GetStream/stream-chat-swift/releases/download/4.24.1/StreamChat-All.zip","4.25.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.25.0/StreamChat-All.zip","4.25.1":"https://github.com/GetStream/stream-chat-swift/releases/download/4.25.1/StreamChat-All.zip","4.26.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.26.0/StreamChat-All.zip","4.27.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.27.0/StreamChat-All.zip","4.27.1":"https://github.com/GetStream/stream-chat-swift/releases/download/4.27.1/StreamChat-All.zip","4.28.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.28.0/StreamChat-All.zip","4.29.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.29.0/StreamChat-All.zip","4.30.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.30.0/StreamChat-All.zip","4.31.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.31.0/StreamChat-All.zip","4.32.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.32.0/StreamChat-All.zip","4.33.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.33.0/StreamChat-All.zip","4.34.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.34.0/StreamChat-All.zip","4.35.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.35.0/StreamChat-All.zip","4.35.1":"https://github.com/GetStream/stream-chat-swift/releases/download/4.35.1/StreamChat-All.zip","4.35.2":"https://github.com/GetStream/stream-chat-swift/releases/download/4.35.2/StreamChat-All.zip","4.36.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.36.0/StreamChat-All.zip","4.37.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.37.0/StreamChat-All.zip","4.37.1":"https://github.com/GetStream/stream-chat-swift/releases/download/4.37.1/StreamChat-All.zip","4.38.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.38.0/StreamChat-All.zip","4.39.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.39.0/StreamChat-All.zip","4.40.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.40.0/StreamChat-All.zip","4.41.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.41.0/StreamChat-All.zip","4.42.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.42.0/StreamChat-All.zip","4.43.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.43.0/StreamChat-All.zip","4.44.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.44.0/StreamChat-All.zip","4.45.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.45.0/StreamChat-All.zip","4.46.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.46.0/StreamChat-All.zip","4.47.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.47.0/StreamChat-All.zip","4.47.1":"https://github.com/GetStream/stream-chat-swift/releases/download/4.47.1/StreamChat-All.zip","4.48.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.48.0/StreamChat-All.zip","4.48.1":"https://github.com/GetStream/stream-chat-swift/releases/download/4.48.1/StreamChat-All.zip","4.49.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.49.0/StreamChat-All.zip","4.50.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.50.0/StreamChat-All.zip","4.51.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.51.0/StreamChat-All.zip","4.52.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.52.0/StreamChat-All.zip","4.53.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.53.0/StreamChat-All.zip","4.54.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.54.0/StreamChat-All.zip","4.55.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.55.0/StreamChat-All.zip","4.56.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.56.0/StreamChat-All.zip","4.56.1":"https://github.com/GetStream/stream-chat-swift/releases/download/4.56.1/StreamChat-All.zip","4.57.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.57.0/StreamChat-All.zip","4.58.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.58.0/StreamChat-All.zip","4.59.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.59.0/StreamChat-All.zip","4.60.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.60.0/StreamChat-All.zip","4.61.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.61.0/StreamChat-All.zip","4.62.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.62.0/StreamChat-All.zip","4.63.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.63.0/StreamChat-All.zip","4.64.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.64.0/StreamChat-All.zip","4.65.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.65.0/StreamChat-All.zip","4.66.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.66.0/StreamChat-All.zip","4.67.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.67.0/StreamChat-All.zip","4.68.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.68.0/StreamChat-All.zip","4.69.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.69.0/StreamChat-All.zip","4.70.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.70.0/StreamChat-All.zip","4.71.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.71.0/StreamChat-All.zip","4.72.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.72.0/StreamChat-All.zip","4.73.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.73.0/StreamChat-All.zip","4.74.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.74.0/StreamChat-All.zip"} \ No newline at end of file +{"4.7.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.7.0/StreamChat-All.zip","4.8.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.8.0/StreamChat-All.zip","4.9.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.9.0/StreamChat-All.zip","4.10.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.10.0/StreamChat-All.zip","4.10.1":"https://github.com/GetStream/stream-chat-swift/releases/download/4.10.1/StreamChat-All.zip","4.11.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.11.0/StreamChat-All.zip","4.12.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.12.0/StreamChat-All.zip","4.13.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.13.0/StreamChat-All.zip","4.13.1":"https://github.com/GetStream/stream-chat-swift/releases/download/4.13.1/StreamChat-All.zip","4.14.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.14.0/StreamChat-All.zip","4.15.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.15.0/StreamChat-All.zip","4.15.1":"https://github.com/GetStream/stream-chat-swift/releases/download/4.15.1/StreamChat-All.zip","4.16.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.16.0/StreamChat-All.zip","4.17.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.17.0/StreamChat-All.zip","4.18.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.18.0/StreamChat-All.zip","4.19.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.19.0/StreamChat-All.zip","4.20.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.20.0/StreamChat-All.zip","4.21.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.21.0/StreamChat-All.zip","4.21.1":"https://github.com/GetStream/stream-chat-swift/releases/download/4.21.1/StreamChat-All.zip","4.21.2":"https://github.com/GetStream/stream-chat-swift/releases/download/4.21.2/StreamChat-All.zip","4.22.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.22.0/StreamChat-All.zip","4.23.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.23.0/StreamChat-All.zip","4.24.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.24.0/StreamChat-All.zip","4.24.1":"https://github.com/GetStream/stream-chat-swift/releases/download/4.24.1/StreamChat-All.zip","4.25.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.25.0/StreamChat-All.zip","4.25.1":"https://github.com/GetStream/stream-chat-swift/releases/download/4.25.1/StreamChat-All.zip","4.26.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.26.0/StreamChat-All.zip","4.27.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.27.0/StreamChat-All.zip","4.27.1":"https://github.com/GetStream/stream-chat-swift/releases/download/4.27.1/StreamChat-All.zip","4.28.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.28.0/StreamChat-All.zip","4.29.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.29.0/StreamChat-All.zip","4.30.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.30.0/StreamChat-All.zip","4.31.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.31.0/StreamChat-All.zip","4.32.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.32.0/StreamChat-All.zip","4.33.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.33.0/StreamChat-All.zip","4.34.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.34.0/StreamChat-All.zip","4.35.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.35.0/StreamChat-All.zip","4.35.1":"https://github.com/GetStream/stream-chat-swift/releases/download/4.35.1/StreamChat-All.zip","4.35.2":"https://github.com/GetStream/stream-chat-swift/releases/download/4.35.2/StreamChat-All.zip","4.36.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.36.0/StreamChat-All.zip","4.37.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.37.0/StreamChat-All.zip","4.37.1":"https://github.com/GetStream/stream-chat-swift/releases/download/4.37.1/StreamChat-All.zip","4.38.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.38.0/StreamChat-All.zip","4.39.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.39.0/StreamChat-All.zip","4.40.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.40.0/StreamChat-All.zip","4.41.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.41.0/StreamChat-All.zip","4.42.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.42.0/StreamChat-All.zip","4.43.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.43.0/StreamChat-All.zip","4.44.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.44.0/StreamChat-All.zip","4.45.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.45.0/StreamChat-All.zip","4.46.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.46.0/StreamChat-All.zip","4.47.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.47.0/StreamChat-All.zip","4.47.1":"https://github.com/GetStream/stream-chat-swift/releases/download/4.47.1/StreamChat-All.zip","4.48.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.48.0/StreamChat-All.zip","4.48.1":"https://github.com/GetStream/stream-chat-swift/releases/download/4.48.1/StreamChat-All.zip","4.49.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.49.0/StreamChat-All.zip","4.50.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.50.0/StreamChat-All.zip","4.51.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.51.0/StreamChat-All.zip","4.52.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.52.0/StreamChat-All.zip","4.53.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.53.0/StreamChat-All.zip","4.54.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.54.0/StreamChat-All.zip","4.55.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.55.0/StreamChat-All.zip","4.56.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.56.0/StreamChat-All.zip","4.56.1":"https://github.com/GetStream/stream-chat-swift/releases/download/4.56.1/StreamChat-All.zip","4.57.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.57.0/StreamChat-All.zip","4.58.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.58.0/StreamChat-All.zip","4.59.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.59.0/StreamChat-All.zip","4.60.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.60.0/StreamChat-All.zip","4.61.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.61.0/StreamChat-All.zip","4.62.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.62.0/StreamChat-All.zip","4.63.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.63.0/StreamChat-All.zip","4.64.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.64.0/StreamChat-All.zip","4.65.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.65.0/StreamChat-All.zip","4.66.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.66.0/StreamChat-All.zip","4.67.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.67.0/StreamChat-All.zip","4.68.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.68.0/StreamChat-All.zip","4.69.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.69.0/StreamChat-All.zip","4.70.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.70.0/StreamChat-All.zip","4.71.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.71.0/StreamChat-All.zip","4.72.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.72.0/StreamChat-All.zip","4.73.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.73.0/StreamChat-All.zip","4.74.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.74.0/StreamChat-All.zip","4.75.0":"https://github.com/GetStream/stream-chat-swift/releases/download/4.75.0/StreamChat-All.zip"} \ No newline at end of file diff --git a/StreamChatUI-XCFramework.podspec b/StreamChatUI-XCFramework.podspec index 1473cdc7e3c..fbc32317daa 100644 --- a/StreamChatUI-XCFramework.podspec +++ b/StreamChatUI-XCFramework.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |spec| spec.name = "StreamChatUI-XCFramework" - spec.version = "4.74.0" + spec.version = "4.75.0" spec.summary = "StreamChat UI Components" spec.description = "StreamChatUI SDK offers flexible UI components able to display data provided by StreamChat SDK." diff --git a/StreamChatUI.podspec b/StreamChatUI.podspec index 7faffa12ee0..724535c07e5 100644 --- a/StreamChatUI.podspec +++ b/StreamChatUI.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |spec| spec.name = "StreamChatUI" - spec.version = "4.74.0" + spec.version = "4.75.0" spec.summary = "StreamChat UI Components" spec.description = "StreamChatUI SDK offers flexible UI components able to display data provided by StreamChat SDK." diff --git a/StreamChatUITestsAppUITests/Tests/Attachments_Tests.swift b/StreamChatUITestsAppUITests/Tests/Attachments_Tests.swift index 12b6c5673b2..12e00357a9e 100644 --- a/StreamChatUITestsAppUITests/Tests/Attachments_Tests.swift +++ b/StreamChatUITestsAppUITests/Tests/Attachments_Tests.swift @@ -7,10 +7,19 @@ import XCTest final class Attachments_Tests: StreamTestCase { override func setUpWithError() throws { + try XCTSkipIf(ProcessInfo().operatingSystemVersion.majorVersion >= 18, + "Attachments tests freeze the test app on iOS > 18") + try super.setUpWithError() addTags([.coreFeatures]) assertMockServer() } + + override func tearDownWithError() throws { + if ProcessInfo().operatingSystemVersion.majorVersion < 18 { + try super.tearDownWithError() + } + } func test_uploadImage() throws { linkToScenario(withId: 28) diff --git a/TestTools/StreamChatTestMockServer/Fixtures/JSONs/http_add_member.json b/TestTools/StreamChatTestMockServer/Fixtures/JSONs/http_add_member.json index 31fb96c09b0..303833a57bf 100644 --- a/TestTools/StreamChatTestMockServer/Fixtures/JSONs/http_add_member.json +++ b/TestTools/StreamChatTestMockServer/Fixtures/JSONs/http_add_member.json @@ -1,11 +1,11 @@ { "channel": { - "id": "cf770a2e-d32f-4be2-88f1-33ce7a478de1", + "id": "277d1327-0afd-4d76-87e8-fac1b3231ba7", "type": "messaging", - "cid": "messaging:cf770a2e-d32f-4be2-88f1-33ce7a478de1", - "last_message_at": "2025-03-01T00:16:45.057386Z", - "created_at": "2025-03-01T00:16:42.426556Z", - "updated_at": "2025-03-01T00:16:42.426557Z", + "cid": "messaging:277d1327-0afd-4d76-87e8-fac1b3231ba7", + "last_message_at": "2025-03-15T00:15:56.802706Z", + "created_at": "2025-03-15T00:15:53.237136Z", + "updated_at": "2025-03-15T00:15:53.237137Z", "created_by": { "id": "luke_skywalker", "name": "Luke Skywalker", @@ -16,17 +16,17 @@ ], "created_at": "2024-04-04T09:26:11.805899Z", - "updated_at": "2025-02-28T04:46:37.3153Z", + "updated_at": "2025-03-04T17:42:53.930104Z", "banned": false, "online": true, - "last_active": "2025-03-01T00:16:41.464293451Z", + "last_active": "2025-03-15T00:15:52.376423417Z", "blocked_user_ids": [ ], + "team": "test", "type": "team", "pando": "{\"speciality\":\"ios engineer\"}", - "birthland": "Tatooine", - "team": "test" + "birthland": "Tatooine" }, "frozen": false, "disabled": false, @@ -131,18 +131,18 @@ ], "created_at": "2024-04-22T06:42:08.562992Z", - "updated_at": "2024-07-11T05:45:57.296628Z", + "updated_at": "2025-03-03T10:00:37.133281Z", "banned": false, "online": false, - "last_active": "2025-02-27T16:18:01.645093Z", + "last_active": "2025-03-13T18:04:51.960419Z", "blocked_user_ids": [ ], "birthland": "Serenno" }, "status": "member", - "created_at": "2025-03-01T00:16:42.431151Z", - "updated_at": "2025-03-01T00:16:42.431151Z", + "created_at": "2025-03-15T00:15:53.24959Z", + "updated_at": "2025-03-15T00:15:53.24959Z", "banned": false, "shadow_banned": false, "role": "member", @@ -164,15 +164,15 @@ "updated_at": "2025-02-27T16:17:46.871132Z", "banned": false, "online": false, - "last_active": "2025-02-28T09:52:06.008333Z", + "last_active": "2025-03-14T17:10:33.441699Z", "blocked_user_ids": [ ], "birthland": "Corellia" }, "status": "member", - "created_at": "2025-03-01T00:16:42.431151Z", - "updated_at": "2025-03-01T00:16:42.431151Z", + "created_at": "2025-03-15T00:15:53.24959Z", + "updated_at": "2025-03-15T00:15:53.24959Z", "banned": false, "shadow_banned": false, "role": "member", @@ -191,21 +191,21 @@ ], "created_at": "2024-04-04T09:26:11.805899Z", - "updated_at": "2025-02-28T04:46:37.3153Z", + "updated_at": "2025-03-04T17:42:53.930104Z", "banned": false, "online": true, - "last_active": "2025-03-01T00:16:41.464293451Z", + "last_active": "2025-03-15T00:15:52.376423417Z", "blocked_user_ids": [ ], - "team": "test", "type": "team", "pando": "{\"speciality\":\"ios engineer\"}", - "birthland": "Tatooine" + "birthland": "Tatooine", + "team": "test" }, "status": "member", - "created_at": "2025-03-01T00:16:42.431151Z", - "updated_at": "2025-03-01T00:16:42.431151Z", + "created_at": "2025-03-15T00:15:53.24959Z", + "updated_at": "2025-03-15T00:15:53.24959Z", "banned": false, "shadow_banned": false, "role": "owner", @@ -227,7 +227,7 @@ "updated_at": "2025-02-20T11:14:21.287666Z", "banned": false, "online": false, - "last_active": "2025-02-28T21:20:23.174867Z", + "last_active": "2025-03-14T13:17:25.910928Z", "blocked_user_ids": [ ], @@ -242,8 +242,8 @@ "birthland": "Polis Massa" }, "status": "member", - "created_at": "2025-03-01T00:16:46.375847Z", - "updated_at": "2025-03-01T00:16:46.375847Z", + "created_at": "2025-03-15T00:15:57.890803Z", + "updated_at": "2025-03-15T00:15:57.890803Z", "banned": false, "shadow_banned": false, "role": "admin", @@ -251,5 +251,5 @@ "notifications_muted": false } ], - "duration": "28.85ms" + "duration": "32.74ms" } \ No newline at end of file diff --git a/TestTools/StreamChatTestMockServer/Fixtures/JSONs/http_attachment.json b/TestTools/StreamChatTestMockServer/Fixtures/JSONs/http_attachment.json index 28a545e778f..4974b12b815 100644 --- a/TestTools/StreamChatTestMockServer/Fixtures/JSONs/http_attachment.json +++ b/TestTools/StreamChatTestMockServer/Fixtures/JSONs/http_attachment.json @@ -1,4 +1,4 @@ { - "file": "https://frankfurt.stream-io-cdn.com/102399/images/9e6097e0-f574-4d57-9eab-31aef610d066.yoda.jpg?Key-Pair-Id=APKAIHG36VEWPDULE23Q&Policy=eyJTdGF0ZW1lbnQiOlt7IlJlc291cmNlIjoiaHR0cHM6Ly9mcmFua2Z1cnQuc3RyZWFtLWlvLWNkbi5jb20vMTAyMzk5L2ltYWdlcy85ZTYwOTdlMC1mNTc0LTRkNTctOWVhYi0zMWFlZjYxMGQwNjYueW9kYS5qcGc~Km9oPTAqb3c9MCoiLCJDb25kaXRpb24iOnsiRGF0ZUxlc3NUaGFuIjp7IkFXUzpFcG9jaFRpbWUiOjE3NDE5OTc4MDd9fX1dfQ__&Signature=Jz2m3g6uOkQi8W4t81i97eRab7EHAEDERys6CvVbcBYlxqoQQP3FYUY9-thG6OHE7BJJrG4AC9o2wFQNMVaPCXYzstiYterHzmswPo0MUYvV0JpB9tKfyqDm5qZf9eDfF-62AriloLgqt93dpbhqPdHt9BYzCFI0HrjA2Ji8eORB1y4UmJPrbZWaJynNTMwtY-moPXMrKQQeEFvBqghttPpy3ZI6sTGg-JwM8gkHE67YXkIpCh8F-S5NowT-Y58vC861cX0Crkk3XuU9zTXu1o79sTm6xaOarWzAfCeedCd~ivhPOXwRGVA8zO0TVoYrgsZQ69Tk8qA7Pojg1fMGNw__&oh=0&ow=0", - "duration": "150.53ms" + "file": "https://frankfurt.stream-io-cdn.com/102399/images/ca1d0939-dcfa-47ae-aff1-99f87ddb4b84.yoda.jpg?Key-Pair-Id=APKAIHG36VEWPDULE23Q&Policy=eyJTdGF0ZW1lbnQiOlt7IlJlc291cmNlIjoiaHR0cHM6Ly9mcmFua2Z1cnQuc3RyZWFtLWlvLWNkbi5jb20vMTAyMzk5L2ltYWdlcy9jYTFkMDkzOS1kY2ZhLTQ3YWUtYWZmMS05OWY4N2RkYjRiODQueW9kYS5qcGc~Km9oPTAqb3c9MCoiLCJDb25kaXRpb24iOnsiRGF0ZUxlc3NUaGFuIjp7IkFXUzpFcG9jaFRpbWUiOjE3NDMyMDczNTh9fX1dfQ__&Signature=K-hSpvlA9G2OfTEbJC9mqXsV1cofTi~zMlAqtGpaWaA44Ew~tKuL7GBY5s29fqLnBjFc8johfDexTNcKCdpg0bvAT197f66upZV0hzR1fGq1tlIm150olBUVKPLDX8FNKBB77S3dNfG6Pwcniv2wWYV85G5yFcP6Bka20B58laRarTtp32vSmq5BjEA7PIueiRR1dGFCykqJsl0-4M~NCLYhuGtqlb7Q5aT2GPrFT9hmf-vFYNNApfe90gZo3i1O6ZeLdF-PwfCqNUiHCvKehUtpjgVYwBqPJHoiPEOe1c018BLsC0JnKaCZQJofHIooLnwVz1skwCdu0NVytwVjSw__&oh=0&ow=0", + "duration": "137.68ms" } \ No newline at end of file diff --git a/TestTools/StreamChatTestMockServer/Fixtures/JSONs/http_channel_creation.json b/TestTools/StreamChatTestMockServer/Fixtures/JSONs/http_channel_creation.json index 6ab7448a757..2685aa57a0d 100644 --- a/TestTools/StreamChatTestMockServer/Fixtures/JSONs/http_channel_creation.json +++ b/TestTools/StreamChatTestMockServer/Fixtures/JSONs/http_channel_creation.json @@ -1,10 +1,10 @@ { "channel": { - "id": "cf770a2e-d32f-4be2-88f1-33ce7a478de1", + "id": "277d1327-0afd-4d76-87e8-fac1b3231ba7", "type": "messaging", - "cid": "messaging:cf770a2e-d32f-4be2-88f1-33ce7a478de1", - "created_at": "2025-03-01T00:16:42.426556Z", - "updated_at": "2025-03-01T00:16:42.426557Z", + "cid": "messaging:277d1327-0afd-4d76-87e8-fac1b3231ba7", + "created_at": "2025-03-15T00:15:53.237136Z", + "updated_at": "2025-03-15T00:15:53.237137Z", "created_by": { "id": "luke_skywalker", "name": "Luke Skywalker", @@ -15,10 +15,10 @@ ], "created_at": "2024-04-04T09:26:11.805899Z", - "updated_at": "2025-02-28T04:46:37.3153Z", + "updated_at": "2025-03-04T17:42:53.930104Z", "banned": false, "online": true, - "last_active": "2025-03-01T00:16:41.464293451Z", + "last_active": "2025-03-15T00:15:52.376423417Z", "blocked_user_ids": [ ], @@ -137,16 +137,16 @@ ], "created_at": "2024-04-22T06:42:08.562992Z", - "updated_at": "2024-07-11T05:45:57.296628Z", + "updated_at": "2025-03-03T10:00:37.133281Z", "banned": false, "online": false, - "last_active": "2025-02-27T16:18:01.645093Z", + "last_active": "2025-03-13T18:04:51.960419Z", "blocked_user_ids": [ ], "birthland": "Serenno" }, - "last_read": "2025-03-01T00:16:42.45004864Z", + "last_read": "2025-03-15T00:15:53.291941472Z", "unread_messages": 0 }, { @@ -163,13 +163,13 @@ "updated_at": "2025-02-27T16:17:46.871132Z", "banned": false, "online": false, - "last_active": "2025-02-28T09:52:06.008333Z", + "last_active": "2025-03-14T17:10:33.441699Z", "blocked_user_ids": [ ], "birthland": "Corellia" }, - "last_read": "2025-03-01T00:16:42.45004864Z", + "last_read": "2025-03-15T00:15:53.291941472Z", "unread_messages": 0 }, { @@ -183,10 +183,10 @@ ], "created_at": "2024-04-04T09:26:11.805899Z", - "updated_at": "2025-02-28T04:46:37.3153Z", + "updated_at": "2025-03-04T17:42:53.930104Z", "banned": false, "online": true, - "last_active": "2025-03-01T00:16:41.464293451Z", + "last_active": "2025-03-15T00:15:52.376423417Z", "blocked_user_ids": [ ], @@ -195,7 +195,7 @@ "pando": "{\"speciality\":\"ios engineer\"}", "birthland": "Tatooine" }, - "last_read": "2025-03-01T00:16:42.45004864Z", + "last_read": "2025-03-15T00:15:53.291941472Z", "unread_messages": 0 } ], @@ -212,18 +212,18 @@ ], "created_at": "2024-04-22T06:42:08.562992Z", - "updated_at": "2024-07-11T05:45:57.296628Z", + "updated_at": "2025-03-03T10:00:37.133281Z", "banned": false, "online": false, - "last_active": "2025-02-27T16:18:01.645093Z", + "last_active": "2025-03-13T18:04:51.960419Z", "blocked_user_ids": [ ], "birthland": "Serenno" }, "status": "member", - "created_at": "2025-03-01T00:16:42.431151Z", - "updated_at": "2025-03-01T00:16:42.431151Z", + "created_at": "2025-03-15T00:15:53.24959Z", + "updated_at": "2025-03-15T00:15:53.24959Z", "banned": false, "shadow_banned": false, "role": "member", @@ -245,15 +245,15 @@ "updated_at": "2025-02-27T16:17:46.871132Z", "banned": false, "online": false, - "last_active": "2025-02-28T09:52:06.008333Z", + "last_active": "2025-03-14T17:10:33.441699Z", "blocked_user_ids": [ ], "birthland": "Corellia" }, "status": "member", - "created_at": "2025-03-01T00:16:42.431151Z", - "updated_at": "2025-03-01T00:16:42.431151Z", + "created_at": "2025-03-15T00:15:53.24959Z", + "updated_at": "2025-03-15T00:15:53.24959Z", "banned": false, "shadow_banned": false, "role": "member", @@ -272,21 +272,21 @@ ], "created_at": "2024-04-04T09:26:11.805899Z", - "updated_at": "2025-02-28T04:46:37.3153Z", + "updated_at": "2025-03-04T17:42:53.930104Z", "banned": false, "online": true, - "last_active": "2025-03-01T00:16:41.464293451Z", + "last_active": "2025-03-15T00:15:52.376423417Z", "blocked_user_ids": [ ], - "team": "test", - "type": "team", "pando": "{\"speciality\":\"ios engineer\"}", - "birthland": "Tatooine" + "birthland": "Tatooine", + "team": "test", + "type": "team" }, "status": "member", - "created_at": "2025-03-01T00:16:42.431151Z", - "updated_at": "2025-03-01T00:16:42.431151Z", + "created_at": "2025-03-15T00:15:53.24959Z", + "updated_at": "2025-03-15T00:15:53.24959Z", "banned": false, "shadow_banned": false, "role": "owner", @@ -305,10 +305,10 @@ ], "created_at": "2024-04-04T09:26:11.805899Z", - "updated_at": "2025-02-28T04:46:37.3153Z", + "updated_at": "2025-03-04T17:42:53.930104Z", "banned": false, "online": true, - "last_active": "2025-03-01T00:16:41.464293451Z", + "last_active": "2025-03-15T00:15:52.376423417Z", "blocked_user_ids": [ ], @@ -318,8 +318,8 @@ "type": "team" }, "status": "member", - "created_at": "2025-03-01T00:16:42.431151Z", - "updated_at": "2025-03-01T00:16:42.431151Z", + "created_at": "2025-03-15T00:15:53.24959Z", + "updated_at": "2025-03-15T00:15:53.24959Z", "banned": false, "shadow_banned": false, "role": "owner", @@ -329,5 +329,5 @@ "threads": [ ], - "duration": "82.12ms" + "duration": "112.48ms" } \ No newline at end of file diff --git a/TestTools/StreamChatTestMockServer/Fixtures/JSONs/http_channel_removal.json b/TestTools/StreamChatTestMockServer/Fixtures/JSONs/http_channel_removal.json index 70cfd522702..05aada7eace 100644 --- a/TestTools/StreamChatTestMockServer/Fixtures/JSONs/http_channel_removal.json +++ b/TestTools/StreamChatTestMockServer/Fixtures/JSONs/http_channel_removal.json @@ -1,12 +1,12 @@ { - "duration": "19.67ms", + "duration": "34.53ms", "channel": { - "id": "cf770a2e-d32f-4be2-88f1-33ce7a478de1", + "id": "277d1327-0afd-4d76-87e8-fac1b3231ba7", "type": "messaging", - "cid": "messaging:cf770a2e-d32f-4be2-88f1-33ce7a478de1", - "created_at": "2025-03-01T00:16:42.426556Z", - "updated_at": "2025-03-01T00:16:50.837368Z", - "deleted_at": "2025-03-01T00:16:51.188209Z", + "cid": "messaging:277d1327-0afd-4d76-87e8-fac1b3231ba7", + "created_at": "2025-03-15T00:15:53.237136Z", + "updated_at": "2025-03-15T00:16:02.845003Z", + "deleted_at": "2025-03-15T00:16:03.417951Z", "created_by": null, "frozen": false, "disabled": false, @@ -23,18 +23,18 @@ ], "created_at": "2024-04-22T06:42:08.562992Z", - "updated_at": "2024-07-11T05:45:57.296628Z", + "updated_at": "2025-03-03T10:00:37.133281Z", "banned": false, "online": false, - "last_active": "2025-02-27T16:18:01.645093Z", + "last_active": "2025-03-13T18:04:51.960419Z", "blocked_user_ids": [ ], "birthland": "Serenno" }, "status": "member", - "created_at": "2025-03-01T00:16:42.431151Z", - "updated_at": "2025-03-01T00:16:42.431151Z", + "created_at": "2025-03-15T00:15:53.24959Z", + "updated_at": "2025-03-15T00:15:53.24959Z", "banned": false, "shadow_banned": false, "role": "member", @@ -56,15 +56,15 @@ "updated_at": "2025-02-27T16:17:46.871132Z", "banned": false, "online": false, - "last_active": "2025-02-28T09:52:06.008333Z", + "last_active": "2025-03-14T17:10:33.441699Z", "blocked_user_ids": [ ], "birthland": "Corellia" }, "status": "member", - "created_at": "2025-03-01T00:16:42.431151Z", - "updated_at": "2025-03-01T00:16:42.431151Z", + "created_at": "2025-03-15T00:15:53.24959Z", + "updated_at": "2025-03-15T00:15:53.24959Z", "banned": false, "shadow_banned": false, "role": "member", @@ -83,10 +83,10 @@ ], "created_at": "2024-04-04T09:26:11.805899Z", - "updated_at": "2025-02-28T04:46:37.3153Z", + "updated_at": "2025-03-04T17:42:53.930104Z", "banned": false, "online": true, - "last_active": "2025-03-01T00:16:41.464293451Z", + "last_active": "2025-03-15T00:15:52.376423417Z", "blocked_user_ids": [ ], @@ -96,8 +96,8 @@ "birthland": "Tatooine" }, "status": "member", - "created_at": "2025-03-01T00:16:42.431151Z", - "updated_at": "2025-03-01T00:16:42.431151Z", + "created_at": "2025-03-15T00:15:53.24959Z", + "updated_at": "2025-03-15T00:15:53.24959Z", "banned": false, "shadow_banned": false, "role": "owner", @@ -119,7 +119,7 @@ "updated_at": "2025-02-20T11:14:21.287666Z", "banned": false, "online": false, - "last_active": "2025-02-28T21:20:23.174867Z", + "last_active": "2025-03-14T13:17:25.910928Z", "blocked_user_ids": [ ], @@ -134,8 +134,8 @@ } }, "status": "member", - "created_at": "2025-03-01T00:16:46.375847Z", - "updated_at": "2025-03-01T00:16:46.375847Z", + "created_at": "2025-03-15T00:15:57.890803Z", + "updated_at": "2025-03-15T00:15:57.890803Z", "banned": false, "shadow_banned": false, "role": "admin", @@ -192,7 +192,7 @@ } ] }, - "truncated_at": "2025-03-01T00:16:51.188209Z", + "truncated_at": "2025-03-15T00:16:03.417951Z", "truncated_by": { "id": "luke_skywalker", "name": "Luke Skywalker", @@ -203,17 +203,17 @@ ], "created_at": "2024-04-04T09:26:11.805899Z", - "updated_at": "2025-02-28T04:46:37.3153Z", + "updated_at": "2025-03-04T17:42:53.930104Z", "banned": false, "online": true, - "last_active": "2025-03-01T00:16:41.464293451Z", + "last_active": "2025-03-15T00:15:52.376423417Z", "blocked_user_ids": [ ], - "birthland": "Tatooine", - "team": "test", "type": "team", - "pando": "{\"speciality\":\"ios engineer\"}" + "pando": "{\"speciality\":\"ios engineer\"}", + "birthland": "Tatooine", + "team": "test" } } } \ No newline at end of file diff --git a/TestTools/StreamChatTestMockServer/Fixtures/JSONs/http_channels.json b/TestTools/StreamChatTestMockServer/Fixtures/JSONs/http_channels.json index be124843320..9783f8b52f9 100644 --- a/TestTools/StreamChatTestMockServer/Fixtures/JSONs/http_channels.json +++ b/TestTools/StreamChatTestMockServer/Fixtures/JSONs/http_channels.json @@ -2,11 +2,11 @@ "channels": [ { "channel": { - "id": "cf770a2e-d32f-4be2-88f1-33ce7a478de1", + "id": "277d1327-0afd-4d76-87e8-fac1b3231ba7", "type": "messaging", - "cid": "messaging:cf770a2e-d32f-4be2-88f1-33ce7a478de1", - "created_at": "2025-03-01T00:16:42.426556Z", - "updated_at": "2025-03-01T00:16:42.426557Z", + "cid": "messaging:277d1327-0afd-4d76-87e8-fac1b3231ba7", + "created_at": "2025-03-15T00:15:53.237136Z", + "updated_at": "2025-03-15T00:15:53.237137Z", "created_by": { "id": "luke_skywalker", "name": "Luke Skywalker", @@ -17,17 +17,17 @@ ], "created_at": "2024-04-04T09:26:11.805899Z", - "updated_at": "2025-02-28T04:46:37.3153Z", + "updated_at": "2025-03-04T17:42:53.930104Z", "banned": false, "online": true, - "last_active": "2025-03-01T00:16:41.464293451Z", + "last_active": "2025-03-15T00:15:52.376423417Z", "blocked_user_ids": [ ], + "birthland": "Tatooine", "team": "test", "type": "team", - "pando": "{\"speciality\":\"ios engineer\"}", - "birthland": "Tatooine" + "pando": "{\"speciality\":\"ios engineer\"}" }, "frozen": false, "disabled": false, @@ -139,17 +139,17 @@ ], "created_at": "2024-04-22T06:42:08.562992Z", - "updated_at": "2024-07-11T05:45:57.296628Z", + "updated_at": "2025-03-03T10:00:37.133281Z", "banned": false, "online": false, - "last_active": "2025-02-27T16:18:01.645093Z", + "last_active": "2025-03-13T18:04:51.960419Z", "blocked_user_ids": [ ], "birthland": "Serenno" }, "unread_messages": 0, - "last_read": "2025-03-01T00:16:42Z" + "last_read": "2025-03-15T00:15:53Z" }, { "user": { @@ -165,14 +165,14 @@ "updated_at": "2025-02-27T16:17:46.871132Z", "banned": false, "online": false, - "last_active": "2025-02-28T09:52:06.008333Z", + "last_active": "2025-03-14T17:10:33.441699Z", "blocked_user_ids": [ ], "birthland": "Corellia" }, "unread_messages": 0, - "last_read": "2025-03-01T00:16:42Z" + "last_read": "2025-03-15T00:15:53Z" }, { "user": { @@ -185,20 +185,20 @@ ], "created_at": "2024-04-04T09:26:11.805899Z", - "updated_at": "2025-02-28T04:46:37.3153Z", + "updated_at": "2025-03-04T17:42:53.930104Z", "banned": false, "online": true, - "last_active": "2025-03-01T00:16:41.464293451Z", + "last_active": "2025-03-15T00:15:52.376423417Z", "blocked_user_ids": [ ], - "team": "test", - "type": "team", "pando": "{\"speciality\":\"ios engineer\"}", - "birthland": "Tatooine" + "birthland": "Tatooine", + "team": "test", + "type": "team" }, "unread_messages": 0, - "last_read": "2025-03-01T00:16:42Z" + "last_read": "2025-03-15T00:15:53Z" } ], "members": [ @@ -214,18 +214,18 @@ ], "created_at": "2024-04-22T06:42:08.562992Z", - "updated_at": "2024-07-11T05:45:57.296628Z", + "updated_at": "2025-03-03T10:00:37.133281Z", "banned": false, "online": false, - "last_active": "2025-02-27T16:18:01.645093Z", + "last_active": "2025-03-13T18:04:51.960419Z", "blocked_user_ids": [ ], "birthland": "Serenno" }, "status": "member", - "created_at": "2025-03-01T00:16:42.431151Z", - "updated_at": "2025-03-01T00:16:42.431151Z", + "created_at": "2025-03-15T00:15:53.24959Z", + "updated_at": "2025-03-15T00:15:53.24959Z", "banned": false, "shadow_banned": false, "role": "member", @@ -247,15 +247,15 @@ "updated_at": "2025-02-27T16:17:46.871132Z", "banned": false, "online": false, - "last_active": "2025-02-28T09:52:06.008333Z", + "last_active": "2025-03-14T17:10:33.441699Z", "blocked_user_ids": [ ], "birthland": "Corellia" }, "status": "member", - "created_at": "2025-03-01T00:16:42.431151Z", - "updated_at": "2025-03-01T00:16:42.431151Z", + "created_at": "2025-03-15T00:15:53.24959Z", + "updated_at": "2025-03-15T00:15:53.24959Z", "banned": false, "shadow_banned": false, "role": "member", @@ -274,21 +274,21 @@ ], "created_at": "2024-04-04T09:26:11.805899Z", - "updated_at": "2025-02-28T04:46:37.3153Z", + "updated_at": "2025-03-04T17:42:53.930104Z", "banned": false, "online": true, - "last_active": "2025-03-01T00:16:41.464293451Z", + "last_active": "2025-03-15T00:15:52.376423417Z", "blocked_user_ids": [ ], - "team": "test", - "type": "team", "pando": "{\"speciality\":\"ios engineer\"}", - "birthland": "Tatooine" + "birthland": "Tatooine", + "team": "test", + "type": "team" }, "status": "member", - "created_at": "2025-03-01T00:16:42.431151Z", - "updated_at": "2025-03-01T00:16:42.431151Z", + "created_at": "2025-03-15T00:15:53.24959Z", + "updated_at": "2025-03-15T00:15:53.24959Z", "banned": false, "shadow_banned": false, "role": "owner", @@ -307,10 +307,10 @@ ], "created_at": "2024-04-04T09:26:11.805899Z", - "updated_at": "2025-02-28T04:46:37.3153Z", + "updated_at": "2025-03-04T17:42:53.930104Z", "banned": false, "online": true, - "last_active": "2025-03-01T00:16:41.464293451Z", + "last_active": "2025-03-15T00:15:52.376423417Z", "blocked_user_ids": [ ], @@ -320,8 +320,8 @@ "birthland": "Tatooine" }, "status": "member", - "created_at": "2025-03-01T00:16:42.431151Z", - "updated_at": "2025-03-01T00:16:42.431151Z", + "created_at": "2025-03-15T00:15:53.24959Z", + "updated_at": "2025-03-15T00:15:53.24959Z", "banned": false, "shadow_banned": false, "channel_role": "channel_member", @@ -332,5 +332,5 @@ ] } ], - "duration": "57.32ms" + "duration": "63.13ms" } \ No newline at end of file diff --git a/TestTools/StreamChatTestMockServer/Fixtures/JSONs/http_events.json b/TestTools/StreamChatTestMockServer/Fixtures/JSONs/http_events.json index 13e3fc6b4cf..97306c7539b 100644 --- a/TestTools/StreamChatTestMockServer/Fixtures/JSONs/http_events.json +++ b/TestTools/StreamChatTestMockServer/Fixtures/JSONs/http_events.json @@ -1,8 +1,8 @@ { "event": { "type": "typing.start", - "cid": "messaging:cf770a2e-d32f-4be2-88f1-33ce7a478de1", - "channel_id": "cf770a2e-d32f-4be2-88f1-33ce7a478de1", + "cid": "messaging:277d1327-0afd-4d76-87e8-fac1b3231ba7", + "channel_id": "277d1327-0afd-4d76-87e8-fac1b3231ba7", "channel_type": "messaging", "user": { "id": "luke_skywalker", @@ -14,10 +14,10 @@ ], "created_at": "2024-04-04T09:26:11.805899Z", - "updated_at": "2025-02-28T04:46:37.3153Z", + "updated_at": "2025-03-04T17:42:53.930104Z", "banned": false, "online": true, - "last_active": "2025-03-01T00:16:41.464293451Z", + "last_active": "2025-03-15T00:15:52.376423417Z", "blocked_user_ids": [ ], @@ -26,7 +26,7 @@ "team": "test", "type": "team" }, - "created_at": "2025-03-01T00:16:44.115293218Z" + "created_at": "2025-03-15T00:15:54.695807648Z" }, - "duration": "5.35ms" + "duration": "6.26ms" } \ No newline at end of file diff --git a/TestTools/StreamChatTestMockServer/Fixtures/JSONs/http_giphy_link.json b/TestTools/StreamChatTestMockServer/Fixtures/JSONs/http_giphy_link.json index 3b55024373a..f5ad2c34041 100644 --- a/TestTools/StreamChatTestMockServer/Fixtures/JSONs/http_giphy_link.json +++ b/TestTools/StreamChatTestMockServer/Fixtures/JSONs/http_giphy_link.json @@ -1,6 +1,6 @@ { "message": { - "id": "42a360c6-99e8-4840-882e-7bb678479a26", + "id": "242685d1-c2d5-4681-9f8d-f0b8623a7c9d", "text": "https://giphy.com/gifs/test-gw3IWyGkC0rsazTi", "html": "

https://giphy.com/gifs/test-gw3IWyGkC0rsazTi

\n", "type": "regular", @@ -14,10 +14,10 @@ ], "created_at": "2024-04-04T09:26:11.805899Z", - "updated_at": "2025-02-28T04:46:37.3153Z", + "updated_at": "2025-03-04T17:42:53.930104Z", "banned": false, "online": true, - "last_active": "2025-03-01T00:16:41.464293451Z", + "last_active": "2025-03-15T00:15:52.376423417Z", "blocked_user_ids": [ ], @@ -32,9 +32,9 @@ "title": "Test Computer GIF - Find & Share on GIPHY", "title_link": "https://giphy.com/gifs/test-gw3IWyGkC0rsazTi", "text": "Discover & share this Test Computer GIF with everyone you know. GIPHY is how you search, share, discover, and create GIFs.", - "image_url": "https://media4.giphy.com/media/v1.Y2lkPTc5MGI3NjExcXI0YnhlaXFjZXUxMmZ5YnBuN3NxdGU5eW1ibWR1Ymk4eHcwdW1pNiZlcD12MV9pbnRlcm5hbF9naWZfYnlfaWQmY3Q9Zw/gw3IWyGkC0rsazTi/giphy.webp", - "thumb_url": "https://media4.giphy.com/media/v1.Y2lkPTc5MGI3NjExcXI0YnhlaXFjZXUxMmZ5YnBuN3NxdGU5eW1ibWR1Ymk4eHcwdW1pNiZlcD12MV9pbnRlcm5hbF9naWZfYnlfaWQmY3Q9Zw/gw3IWyGkC0rsazTi/giphy.webp", - "asset_url": "https://media4.giphy.com/media/v1.Y2lkPTc5MGI3NjExcXI0YnhlaXFjZXUxMmZ5YnBuN3NxdGU5eW1ibWR1Ymk4eHcwdW1pNiZlcD12MV9pbnRlcm5hbF9naWZfYnlfaWQmY3Q9Zw/gw3IWyGkC0rsazTi/giphy.mp4", + "image_url": "https://media1.giphy.com/media/v1.Y2lkPTc5MGI3NjExY2NwOHd5c2k2MzhkazVlMThpMnJ3cDdzN2VuN29wOWc1ZHVobW92YSZlcD12MV9pbnRlcm5hbF9naWZfYnlfaWQmY3Q9Zw/gw3IWyGkC0rsazTi/giphy.webp", + "thumb_url": "https://media1.giphy.com/media/v1.Y2lkPTc5MGI3NjExY2NwOHd5c2k2MzhkazVlMThpMnJ3cDdzN2VuN29wOWc1ZHVobW92YSZlcD12MV9pbnRlcm5hbF9naWZfYnlfaWQmY3Q9Zw/gw3IWyGkC0rsazTi/giphy.webp", + "asset_url": "https://media1.giphy.com/media/v1.Y2lkPTc5MGI3NjExY2NwOHd5c2k2MzhkazVlMThpMnJ3cDdzN2VuN29wOWc1ZHVobW92YSZlcD12MV9pbnRlcm5hbF9naWZfYnlfaWQmY3Q9Zw/gw3IWyGkC0rsazTi/giphy.mp4", "og_scrape_url": "https://giphy.com/gifs/test-gw3IWyGkC0rsazTi" } ], @@ -50,17 +50,17 @@ }, "reply_count": 0, "deleted_reply_count": 0, - "cid": "messaging:cf770a2e-d32f-4be2-88f1-33ce7a478de1", - "created_at": "2025-03-01T00:16:50.199938Z", - "updated_at": "2025-03-01T00:16:50.199938Z", + "cid": "messaging:277d1327-0afd-4d76-87e8-fac1b3231ba7", + "created_at": "2025-03-15T00:16:02.280998Z", + "updated_at": "2025-03-15T00:16:02.280998Z", "shadowed": false, "mentioned_users": [ ], "i18n": { - "language": "id", "id_text": "https://giphy.com/gifs/test-gw3IWyGkC0rsazTi", - "ru_text": "https://giphy.com/gifs/test-gw3IWyGkC0rsazTi" + "ru_text": "https://giphy.com/gifs/test-gw3IWyGkC0rsazTi", + "language": "id" }, "silent": false, "pinned": false, @@ -71,5 +71,5 @@ ] }, - "duration": "344.78ms" + "duration": "571.41ms" } \ No newline at end of file diff --git a/TestTools/StreamChatTestMockServer/Fixtures/JSONs/http_message.json b/TestTools/StreamChatTestMockServer/Fixtures/JSONs/http_message.json index e71444fdc73..0c78080a4b7 100644 --- a/TestTools/StreamChatTestMockServer/Fixtures/JSONs/http_message.json +++ b/TestTools/StreamChatTestMockServer/Fixtures/JSONs/http_message.json @@ -1,6 +1,6 @@ { "message": { - "id": "79ad55ee-d9d4-46ba-af0e-876efb71c083", + "id": "264dfdcf-4cbf-4ba4-afd4-eb622e7b7a36", "text": "Test", "html": "

Test

\n", "type": "regular", @@ -14,17 +14,17 @@ ], "created_at": "2024-04-04T09:26:11.805899Z", - "updated_at": "2025-02-28T04:46:37.3153Z", + "updated_at": "2025-03-04T17:42:53.930104Z", "banned": false, "online": true, - "last_active": "2025-03-01T00:16:41.464293451Z", + "last_active": "2025-03-15T00:15:52.376423417Z", "blocked_user_ids": [ ], - "type": "team", - "pando": "{\"speciality\":\"ios engineer\"}", "birthland": "Tatooine", - "team": "test" + "team": "test", + "type": "team", + "pando": "{\"speciality\":\"ios engineer\"}" }, "attachments": [ @@ -41,9 +41,9 @@ }, "reply_count": 0, "deleted_reply_count": 0, - "cid": "messaging:cf770a2e-d32f-4be2-88f1-33ce7a478de1", - "created_at": "2025-03-01T00:16:45.057386Z", - "updated_at": "2025-03-01T00:16:45.057386Z", + "cid": "messaging:277d1327-0afd-4d76-87e8-fac1b3231ba7", + "created_at": "2025-03-15T00:15:56.802706Z", + "updated_at": "2025-03-15T00:15:56.802706Z", "shadowed": false, "mentioned_users": [ @@ -57,5 +57,5 @@ ] }, - "duration": "369.20ms" + "duration": "1659.24ms" } \ No newline at end of file diff --git a/TestTools/StreamChatTestMockServer/Fixtures/JSONs/http_message_ephemeral.json b/TestTools/StreamChatTestMockServer/Fixtures/JSONs/http_message_ephemeral.json index c1482a1e707..a78ed740912 100644 --- a/TestTools/StreamChatTestMockServer/Fixtures/JSONs/http_message_ephemeral.json +++ b/TestTools/StreamChatTestMockServer/Fixtures/JSONs/http_message_ephemeral.json @@ -1,6 +1,6 @@ { "message": { - "id": "a273e965-c2c4-44c1-935d-09efd59b65f1", + "id": "b54caa37-debe-41dc-ad4e-f1b08ab550b7", "text": "/giphy Test", "command": "giphy", "html": "

/giphy Test

\n", @@ -15,10 +15,10 @@ ], "created_at": "2024-04-04T09:26:11.805899Z", - "updated_at": "2025-02-28T04:46:37.3153Z", + "updated_at": "2025-03-04T17:42:53.930104Z", "banned": false, "online": true, - "last_active": "2025-03-01T00:16:41.464293451Z", + "last_active": "2025-03-15T00:15:52.376423417Z", "blocked_user_ids": [ ], @@ -31,8 +31,8 @@ { "type": "giphy", "title": "Test", - "title_link": "https://giphy.com/gifs/PXuINbwoyq80g", - "thumb_url": "https://media0.giphy.com/media/PXuINbwoyq80g/giphy.gif?cid=c4b036752x1rgz8cdjnwvtnr3h0kwtg3gnlp9pl79zngu10d&ep=v1_gifs_search&rid=giphy.gif&ct=g", + "title_link": "https://giphy.com/gifs/dog-hello-pun-yoJC2qNujv3gJWP504", + "thumb_url": "https://media0.giphy.com/media/yoJC2qNujv3gJWP504/giphy.gif?cid=c4b036756rudds4wzvwj2tiidfa6vuotyn8ovgwvgszezm68&ep=v1_gifs_search&rid=giphy.gif&ct=g", "actions": [ { "name": "image_action", @@ -58,52 +58,52 @@ ], "giphy": { "original": { - "url": "https://media0.giphy.com/media/PXuINbwoyq80g/giphy.gif?cid=c4b036752x1rgz8cdjnwvtnr3h0kwtg3gnlp9pl79zngu10d&ep=v1_gifs_search&rid=giphy.gif&ct=g", - "width": "245", - "height": "188", - "size": "437951", - "frames": "16" + "url": "https://media0.giphy.com/media/yoJC2qNujv3gJWP504/giphy.gif?cid=c4b036756rudds4wzvwj2tiidfa6vuotyn8ovgwvgszezm68&ep=v1_gifs_search&rid=giphy.gif&ct=g", + "width": "533", + "height": "301", + "size": "1807240", + "frames": "24" }, "fixed_height": { - "url": "https://media0.giphy.com/media/PXuINbwoyq80g/200.gif?cid=c4b036752x1rgz8cdjnwvtnr3h0kwtg3gnlp9pl79zngu10d&ep=v1_gifs_search&rid=200.gif&ct=g", - "width": "260", + "url": "https://media0.giphy.com/media/yoJC2qNujv3gJWP504/200.gif?cid=c4b036756rudds4wzvwj2tiidfa6vuotyn8ovgwvgszezm68&ep=v1_gifs_search&rid=200.gif&ct=g", + "width": "354", "height": "200", - "size": "475326", + "size": "705342", "frames": "" }, "fixed_height_still": { - "url": "https://media0.giphy.com/media/PXuINbwoyq80g/200_s.gif?cid=c4b036752x1rgz8cdjnwvtnr3h0kwtg3gnlp9pl79zngu10d&ep=v1_gifs_search&rid=200_s.gif&ct=g", - "width": "260", + "url": "https://media0.giphy.com/media/yoJC2qNujv3gJWP504/200_s.gif?cid=c4b036756rudds4wzvwj2tiidfa6vuotyn8ovgwvgszezm68&ep=v1_gifs_search&rid=200_s.gif&ct=g", + "width": "354", "height": "200", - "size": "26708", + "size": "30051", "frames": "" }, "fixed_height_downsampled": { - "url": "https://media0.giphy.com/media/PXuINbwoyq80g/200_d.gif?cid=c4b036752x1rgz8cdjnwvtnr3h0kwtg3gnlp9pl79zngu10d&ep=v1_gifs_search&rid=200_d.gif&ct=g", - "width": "260", + "url": "https://media0.giphy.com/media/yoJC2qNujv3gJWP504/200_d.gif?cid=c4b036756rudds4wzvwj2tiidfa6vuotyn8ovgwvgszezm68&ep=v1_gifs_search&rid=200_d.gif&ct=g", + "width": "354", "height": "200", - "size": "167307", + "size": "196979", "frames": "" }, "fixed_width": { - "url": "https://media0.giphy.com/media/PXuINbwoyq80g/200w.gif?cid=c4b036752x1rgz8cdjnwvtnr3h0kwtg3gnlp9pl79zngu10d&ep=v1_gifs_search&rid=200w.gif&ct=g", + "url": "https://media0.giphy.com/media/yoJC2qNujv3gJWP504/200w.gif?cid=c4b036756rudds4wzvwj2tiidfa6vuotyn8ovgwvgszezm68&ep=v1_gifs_search&rid=200w.gif&ct=g", "width": "200", - "height": "154", - "size": "293168", + "height": "113", + "size": "325561", "frames": "" }, "fixed_width_still": { - "url": "https://media0.giphy.com/media/PXuINbwoyq80g/200w_s.gif?cid=c4b036752x1rgz8cdjnwvtnr3h0kwtg3gnlp9pl79zngu10d&ep=v1_gifs_search&rid=200w_s.gif&ct=g", + "url": "https://media0.giphy.com/media/yoJC2qNujv3gJWP504/200w_s.gif?cid=c4b036756rudds4wzvwj2tiidfa6vuotyn8ovgwvgszezm68&ep=v1_gifs_search&rid=200w_s.gif&ct=g", "width": "200", - "height": "154", - "size": "16863", + "height": "113", + "size": "14942", "frames": "" }, "fixed_width_downsampled": { - "url": "https://media0.giphy.com/media/PXuINbwoyq80g/200w_d.gif?cid=c4b036752x1rgz8cdjnwvtnr3h0kwtg3gnlp9pl79zngu10d&ep=v1_gifs_search&rid=200w_d.gif&ct=g", + "url": "https://media0.giphy.com/media/yoJC2qNujv3gJWP504/200w_d.gif?cid=c4b036756rudds4wzvwj2tiidfa6vuotyn8ovgwvgszezm68&ep=v1_gifs_search&rid=200w_d.gif&ct=g", "width": "200", - "height": "154", - "size": "103220", + "height": "113", + "size": "83097", "frames": "" } } @@ -121,9 +121,9 @@ }, "reply_count": 0, "deleted_reply_count": 0, - "cid": "messaging:cf770a2e-d32f-4be2-88f1-33ce7a478de1", - "created_at": "2025-03-01T00:16:47.857666Z", - "updated_at": "2025-03-01T00:16:47.857666Z", + "cid": "messaging:277d1327-0afd-4d76-87e8-fac1b3231ba7", + "created_at": "2025-03-15T00:15:59.336014Z", + "updated_at": "2025-03-15T00:15:59.336014Z", "shadowed": false, "mentioned_users": [ @@ -146,5 +146,5 @@ "name": "Giphy" } }, - "duration": "99.52ms" + "duration": "319.56ms" } \ No newline at end of file diff --git a/TestTools/StreamChatTestMockServer/Fixtures/JSONs/http_reaction.json b/TestTools/StreamChatTestMockServer/Fixtures/JSONs/http_reaction.json index c2d6a732b61..1606e9eaefc 100644 --- a/TestTools/StreamChatTestMockServer/Fixtures/JSONs/http_reaction.json +++ b/TestTools/StreamChatTestMockServer/Fixtures/JSONs/http_reaction.json @@ -1,6 +1,6 @@ { "message": { - "id": "79ad55ee-d9d4-46ba-af0e-876efb71c083", + "id": "264dfdcf-4cbf-4ba4-afd4-eb622e7b7a36", "text": "Test", "html": "

Test

\n", "type": "regular", @@ -14,24 +14,24 @@ ], "created_at": "2024-04-04T09:26:11.805899Z", - "updated_at": "2025-02-28T04:46:37.3153Z", + "updated_at": "2025-03-04T17:42:53.930104Z", "banned": false, "online": true, - "last_active": "2025-03-01T00:16:41.464293451Z", + "last_active": "2025-03-15T00:15:52.376423417Z", "blocked_user_ids": [ ], - "pando": "{\"speciality\":\"ios engineer\"}", - "birthland": "Tatooine", "team": "test", - "type": "team" + "type": "team", + "pando": "{\"speciality\":\"ios engineer\"}", + "birthland": "Tatooine" }, "attachments": [ ], "latest_reactions": [ { - "message_id": "79ad55ee-d9d4-46ba-af0e-876efb71c083", + "message_id": "264dfdcf-4cbf-4ba4-afd4-eb622e7b7a36", "user_id": "luke_skywalker", "user": { "id": "luke_skywalker", @@ -43,27 +43,27 @@ ], "created_at": "2024-04-04T09:26:11.805899Z", - "updated_at": "2025-02-28T04:46:37.3153Z", + "updated_at": "2025-03-04T17:42:53.930104Z", "banned": false, "online": true, - "last_active": "2025-03-01T00:16:41.464293451Z", + "last_active": "2025-03-15T00:15:52.376423417Z", "blocked_user_ids": [ ], + "type": "team", "pando": "{\"speciality\":\"ios engineer\"}", "birthland": "Tatooine", - "team": "test", - "type": "team" + "team": "test" }, "type": "like", "score": 1, - "created_at": "2025-03-01T00:16:45.705797Z", - "updated_at": "2025-03-01T00:16:45.705797Z" + "created_at": "2025-03-15T00:15:57.332808Z", + "updated_at": "2025-03-15T00:15:57.332808Z" } ], "own_reactions": [ { - "message_id": "79ad55ee-d9d4-46ba-af0e-876efb71c083", + "message_id": "264dfdcf-4cbf-4ba4-afd4-eb622e7b7a36", "user_id": "luke_skywalker", "user": { "id": "luke_skywalker", @@ -75,22 +75,22 @@ ], "created_at": "2024-04-04T09:26:11.805899Z", - "updated_at": "2025-02-28T04:46:37.3153Z", + "updated_at": "2025-03-04T17:42:53.930104Z", "banned": false, "online": true, - "last_active": "2025-03-01T00:16:41.464293451Z", + "last_active": "2025-03-15T00:15:52.376423417Z", "blocked_user_ids": [ ], - "team": "test", - "type": "team", "pando": "{\"speciality\":\"ios engineer\"}", - "birthland": "Tatooine" + "birthland": "Tatooine", + "team": "test", + "type": "team" }, "type": "like", "score": 1, - "created_at": "2025-03-01T00:16:45.705797Z", - "updated_at": "2025-03-01T00:16:45.705797Z" + "created_at": "2025-03-15T00:15:57.332808Z", + "updated_at": "2025-03-15T00:15:57.332808Z" } ], "reaction_counts": { @@ -103,15 +103,15 @@ "like": { "count": 1, "sum_scores": 1, - "first_reaction_at": "2025-03-01T00:16:45.705797Z", - "last_reaction_at": "2025-03-01T00:16:45.705797Z" + "first_reaction_at": "2025-03-15T00:15:57.332808Z", + "last_reaction_at": "2025-03-15T00:15:57.332808Z" } }, "reply_count": 0, "deleted_reply_count": 0, - "cid": "messaging:cf770a2e-d32f-4be2-88f1-33ce7a478de1", - "created_at": "2025-03-01T00:16:45.057386Z", - "updated_at": "2025-03-01T00:16:45.710133Z", + "cid": "messaging:277d1327-0afd-4d76-87e8-fac1b3231ba7", + "created_at": "2025-03-15T00:15:56.802706Z", + "updated_at": "2025-03-15T00:15:57.343296Z", "shadowed": false, "mentioned_users": [ @@ -126,7 +126,7 @@ ] }, "reaction": { - "message_id": "79ad55ee-d9d4-46ba-af0e-876efb71c083", + "message_id": "264dfdcf-4cbf-4ba4-afd4-eb622e7b7a36", "user_id": "luke_skywalker", "user": { "id": "luke_skywalker", @@ -138,22 +138,22 @@ ], "created_at": "2024-04-04T09:26:11.805899Z", - "updated_at": "2025-02-28T04:46:37.3153Z", + "updated_at": "2025-03-04T17:42:53.930104Z", "banned": false, "online": true, - "last_active": "2025-03-01T00:16:41.464293451Z", + "last_active": "2025-03-15T00:15:52.376423417Z", "blocked_user_ids": [ ], + "pando": "{\"speciality\":\"ios engineer\"}", "birthland": "Tatooine", "team": "test", - "type": "team", - "pando": "{\"speciality\":\"ios engineer\"}" + "type": "team" }, "type": "like", "score": 1, - "created_at": "2025-03-01T00:16:45.705797Z", - "updated_at": "2025-03-01T00:16:45.705797Z" + "created_at": "2025-03-15T00:15:57.332808Z", + "updated_at": "2025-03-15T00:15:57.332808Z" }, - "duration": "24.97ms" + "duration": "31.72ms" } \ No newline at end of file diff --git a/TestTools/StreamChatTestMockServer/Fixtures/JSONs/http_truncate.json b/TestTools/StreamChatTestMockServer/Fixtures/JSONs/http_truncate.json index 150806d61c6..c044ac0a2f8 100644 --- a/TestTools/StreamChatTestMockServer/Fixtures/JSONs/http_truncate.json +++ b/TestTools/StreamChatTestMockServer/Fixtures/JSONs/http_truncate.json @@ -1,12 +1,12 @@ { - "duration": "57.83ms", + "duration": "87.38ms", "channel": { - "id": "cf770a2e-d32f-4be2-88f1-33ce7a478de1", + "id": "277d1327-0afd-4d76-87e8-fac1b3231ba7", "type": "messaging", - "cid": "messaging:cf770a2e-d32f-4be2-88f1-33ce7a478de1", + "cid": "messaging:277d1327-0afd-4d76-87e8-fac1b3231ba7", "last_message_at": "0001-01-01T00:00:00Z", - "created_at": "2025-03-01T00:16:42.426556Z", - "updated_at": "2025-03-01T00:16:50.837368Z", + "created_at": "2025-03-15T00:15:53.237136Z", + "updated_at": "2025-03-15T00:16:02.845003Z", "created_by": { "id": "luke_skywalker", "name": "Luke Skywalker", @@ -17,17 +17,17 @@ ], "created_at": "2024-04-04T09:26:11.805899Z", - "updated_at": "2025-02-28T04:46:37.3153Z", + "updated_at": "2025-03-04T17:42:53.930104Z", "banned": false, "online": true, - "last_active": "2025-03-01T00:16:41.464293451Z", + "last_active": "2025-03-15T00:15:52.376423417Z", "blocked_user_ids": [ ], + "team": "test", "type": "team", "pando": "{\"speciality\":\"ios engineer\"}", - "birthland": "Tatooine", - "team": "test" + "birthland": "Tatooine" }, "frozen": false, "disabled": false, @@ -44,18 +44,18 @@ ], "created_at": "2024-04-22T06:42:08.562992Z", - "updated_at": "2024-07-11T05:45:57.296628Z", + "updated_at": "2025-03-03T10:00:37.133281Z", "banned": false, "online": false, - "last_active": "2025-02-27T16:18:01.645093Z", + "last_active": "2025-03-13T18:04:51.960419Z", "blocked_user_ids": [ ], "birthland": "Serenno" }, "status": "member", - "created_at": "2025-03-01T00:16:42.431151Z", - "updated_at": "2025-03-01T00:16:42.431151Z", + "created_at": "2025-03-15T00:15:53.24959Z", + "updated_at": "2025-03-15T00:15:53.24959Z", "banned": false, "shadow_banned": false, "role": "member", @@ -77,15 +77,15 @@ "updated_at": "2025-02-27T16:17:46.871132Z", "banned": false, "online": false, - "last_active": "2025-02-28T09:52:06.008333Z", + "last_active": "2025-03-14T17:10:33.441699Z", "blocked_user_ids": [ ], "birthland": "Corellia" }, "status": "member", - "created_at": "2025-03-01T00:16:42.431151Z", - "updated_at": "2025-03-01T00:16:42.431151Z", + "created_at": "2025-03-15T00:15:53.24959Z", + "updated_at": "2025-03-15T00:15:53.24959Z", "banned": false, "shadow_banned": false, "role": "member", @@ -104,21 +104,21 @@ ], "created_at": "2024-04-04T09:26:11.805899Z", - "updated_at": "2025-02-28T04:46:37.3153Z", + "updated_at": "2025-03-04T17:42:53.930104Z", "banned": false, "online": true, - "last_active": "2025-03-01T00:16:41.464293451Z", + "last_active": "2025-03-15T00:15:52.376423417Z", "blocked_user_ids": [ ], - "birthland": "Tatooine", - "team": "test", "type": "team", - "pando": "{\"speciality\":\"ios engineer\"}" + "pando": "{\"speciality\":\"ios engineer\"}", + "birthland": "Tatooine", + "team": "test" }, "status": "member", - "created_at": "2025-03-01T00:16:42.431151Z", - "updated_at": "2025-03-01T00:16:42.431151Z", + "created_at": "2025-03-15T00:15:53.24959Z", + "updated_at": "2025-03-15T00:15:53.24959Z", "banned": false, "shadow_banned": false, "role": "owner", @@ -140,23 +140,23 @@ "updated_at": "2025-02-20T11:14:21.287666Z", "banned": false, "online": false, - "last_active": "2025-02-28T21:20:23.174867Z", + "last_active": "2025-03-14T13:17:25.910928Z", "blocked_user_ids": [ ], "birthland": "Polis Massa", "private_settings": { - "typingIndicators": { + "readReceipts": { "enabled": false }, - "readReceipts": { + "typingIndicators": { "enabled": false } } }, "status": "member", - "created_at": "2025-03-01T00:16:46.375847Z", - "updated_at": "2025-03-01T00:16:46.375847Z", + "created_at": "2025-03-15T00:15:57.890803Z", + "updated_at": "2025-03-15T00:15:57.890803Z", "banned": false, "shadow_banned": false, "role": "admin", @@ -214,7 +214,7 @@ } ] }, - "truncated_at": "2025-03-01T00:16:50.831322Z", + "truncated_at": "2025-03-15T00:16:02.838566Z", "truncated_by": { "id": "luke_skywalker", "name": "Luke Skywalker", @@ -225,22 +225,22 @@ ], "created_at": "2024-04-04T09:26:11.805899Z", - "updated_at": "2025-02-28T04:46:37.3153Z", + "updated_at": "2025-03-04T17:42:53.930104Z", "banned": false, "online": true, - "last_active": "2025-03-01T00:16:41.464293451Z", + "last_active": "2025-03-15T00:15:52.376423417Z", "blocked_user_ids": [ ], - "team": "test", - "type": "team", "pando": "{\"speciality\":\"ios engineer\"}", - "birthland": "Tatooine" + "birthland": "Tatooine", + "team": "test", + "type": "team" }, "name": "Sync Mock Server" }, "message": { - "id": "df951c9d-c48e-4506-b126-9edbc8bc5d08", + "id": "54cf8e5f-9b52-4d1b-bbe6-2c7dadf13718", "text": "Channel truncated", "html": "

Channel truncated

\n", "type": "system", @@ -254,10 +254,10 @@ ], "created_at": "2024-04-04T09:26:11.805899Z", - "updated_at": "2025-02-28T04:46:37.3153Z", + "updated_at": "2025-03-04T17:42:53.930104Z", "banned": false, "online": true, - "last_active": "2025-03-01T00:16:41.464293451Z", + "last_active": "2025-03-15T00:15:52.376423417Z", "blocked_user_ids": [ ], @@ -281,9 +281,9 @@ }, "reply_count": 0, "deleted_reply_count": 0, - "cid": "messaging:cf770a2e-d32f-4be2-88f1-33ce7a478de1", - "created_at": "2025-03-01T00:16:50.831323Z", - "updated_at": "2025-03-01T00:16:50.831323Z", + "cid": "messaging:277d1327-0afd-4d76-87e8-fac1b3231ba7", + "created_at": "2025-03-15T00:16:02.838567Z", + "updated_at": "2025-03-15T00:16:02.838567Z", "shadowed": false, "mentioned_users": [ diff --git a/TestTools/StreamChatTestMockServer/Fixtures/JSONs/http_unsplash_link.json b/TestTools/StreamChatTestMockServer/Fixtures/JSONs/http_unsplash_link.json index 2ab0f868392..47474c485d4 100644 --- a/TestTools/StreamChatTestMockServer/Fixtures/JSONs/http_unsplash_link.json +++ b/TestTools/StreamChatTestMockServer/Fixtures/JSONs/http_unsplash_link.json @@ -1,6 +1,6 @@ { "message": { - "id": "9038c54c-884c-4e24-a6d3-457e1eeb2065", + "id": "3071d78f-dfb2-4900-8ac5-a26a4a245494", "text": "https://unsplash.com/photos/1_2d3MRbI9c", "html": "

https://unsplash.com/photos/1_2d3MRbI9c

\n", "type": "regular", @@ -14,10 +14,10 @@ ], "created_at": "2024-04-04T09:26:11.805899Z", - "updated_at": "2025-02-28T04:46:37.3153Z", + "updated_at": "2025-03-04T17:42:53.930104Z", "banned": false, "online": true, - "last_active": "2025-03-01T00:16:41.464293451Z", + "last_active": "2025-03-15T00:15:52.376423417Z", "blocked_user_ids": [ ], @@ -32,8 +32,8 @@ "title": "Photo by Joao Branco on Unsplash", "title_link": "https://unsplash.com/photos/green-pine-tree-mountain-slope-scenery-1_2d3MRbI9c", "text": "Download this photo by Joao Branco on Unsplash", - "image_url": "https://images.unsplash.com/photo-1568574728383-06fca083883d?mark=https%3A%2F%2Fimages.unsplash.com%2Fopengraph%2Flogo.png&mark-w=64&mark-align=top%2Cleft&mark-pad=50&h=630&w=1200&crop=faces%2Cedges&blend-w=1&blend=000000&blend-mode=normal&blend-alpha=10&auto=format&fit=crop&q=60&ixid=M3wxMjA3fDB8MXxhbGx8fHx8fHx8fHwxNzQwNzg3NTc1fA&ixlib=rb-4.0.3", - "thumb_url": "https://images.unsplash.com/photo-1568574728383-06fca083883d?mark=https%3A%2F%2Fimages.unsplash.com%2Fopengraph%2Flogo.png&mark-w=64&mark-align=top%2Cleft&mark-pad=50&h=630&w=1200&crop=faces%2Cedges&blend-w=1&blend=000000&blend-mode=normal&blend-alpha=10&auto=format&fit=crop&q=60&ixid=M3wxMjA3fDB8MXxhbGx8fHx8fHx8fHwxNzQwNzg3NTc1fA&ixlib=rb-4.0.3", + "image_url": "https://images.unsplash.com/photo-1568574728383-06fca083883d?mark=https%3A%2F%2Fimages.unsplash.com%2Fopengraph%2Flogo.png&mark-w=64&mark-align=top%2Cleft&mark-pad=50&h=630&w=1200&crop=faces%2Cedges&blend-w=1&blend=000000&blend-mode=normal&blend-alpha=10&auto=format&fit=crop&q=60&ixid=M3wxMjA3fDB8MXxhbGx8fHx8fHx8fHwxNzQxOTk3NzYwfA&ixlib=rb-4.0.3", + "thumb_url": "https://images.unsplash.com/photo-1568574728383-06fca083883d?mark=https%3A%2F%2Fimages.unsplash.com%2Fopengraph%2Flogo.png&mark-w=64&mark-align=top%2Cleft&mark-pad=50&h=630&w=1200&crop=faces%2Cedges&blend-w=1&blend=000000&blend-mode=normal&blend-alpha=10&auto=format&fit=crop&q=60&ixid=M3wxMjA3fDB8MXxhbGx8fHx8fHx8fHwxNzQxOTk3NzYwfA&ixlib=rb-4.0.3", "og_scrape_url": "https://unsplash.com/photos/1_2d3MRbI9c" } ], @@ -49,17 +49,17 @@ }, "reply_count": 0, "deleted_reply_count": 0, - "cid": "messaging:cf770a2e-d32f-4be2-88f1-33ce7a478de1", - "created_at": "2025-03-01T00:16:49.259707Z", - "updated_at": "2025-03-01T00:16:49.259707Z", + "cid": "messaging:277d1327-0afd-4d76-87e8-fac1b3231ba7", + "created_at": "2025-03-15T00:16:01.252143Z", + "updated_at": "2025-03-15T00:16:01.252143Z", "shadowed": false, "mentioned_users": [ ], "i18n": { + "id_text": "https://unsplash.com/photos/1_2d3MRbI9c", "ru_text": "https://unsplash.com/photos/1_2d3MRbI9c", - "language": "id", - "id_text": "https://unsplash.com/photos/1_2d3MRbI9c" + "language": "id" }, "silent": false, "pinned": false, @@ -70,5 +70,5 @@ ] }, - "duration": "273.58ms" + "duration": "967.11ms" } \ No newline at end of file diff --git a/TestTools/StreamChatTestMockServer/Fixtures/JSONs/http_youtube_link.json b/TestTools/StreamChatTestMockServer/Fixtures/JSONs/http_youtube_link.json index bbf0fedbc42..2725564d540 100644 --- a/TestTools/StreamChatTestMockServer/Fixtures/JSONs/http_youtube_link.json +++ b/TestTools/StreamChatTestMockServer/Fixtures/JSONs/http_youtube_link.json @@ -1,6 +1,6 @@ { "message": { - "id": "876dc879-701f-464c-9e29-b4f27ec8ef87", + "id": "1ba2f092-6dab-49e5-a500-83a1d2e477c1", "text": "https://youtube.com/watch?v=xOX7MsrbaPY", "html": "

https://youtube.com/watch?v=xOX7MsrbaPY

\n", "type": "regular", @@ -14,26 +14,28 @@ ], "created_at": "2024-04-04T09:26:11.805899Z", - "updated_at": "2025-02-28T04:46:37.3153Z", + "updated_at": "2025-03-04T17:42:53.930104Z", "banned": false, "online": true, - "last_active": "2025-03-01T00:16:41.464293451Z", + "last_active": "2025-03-15T00:15:52.376423417Z", "blocked_user_ids": [ ], - "pando": "{\"speciality\":\"ios engineer\"}", - "birthland": "Tatooine", "team": "test", - "type": "team" + "type": "team", + "pando": "{\"speciality\":\"ios engineer\"}", + "birthland": "Tatooine" }, "attachments": [ { "type": "video", - "author_name": "Introducing MotionScape", + "author_name": "YouTube", "title": "Introducing MotionScape: Prototype SwiftUI Animation Easings", "title_link": "https://www.youtube.com/watch?v=xOX7MsrbaPY", - "text": "MotionScape is your SwiftUI animation's playground as a developer. You can see all animations and their parameters in effect with beautifully designed and handcrafted animation examples. Best of all: directly preview and export your settings as production-ready SwiftUI code that you can use in your apps as-is. Supercharge your apps with animations and get to know how to use them - with MotionScape! Download MotionScape from the Mac AppStore: https://gstrm.io/motionscape-yt Webpage: https://getstream.github.io/motionscape-app/ SwiftUI chat messaging: https://getstream.io/chat/sdk/swiftui/ Chapters: 00:00 Introducing MotionScape 00:31 Adjusting animation parameters 00:54 Supported interpolations 01:03 Previewing animation examples 01:50 Find and download MotionScape", - "asset_url": "https://www.youtube.com/embed/xOX7MsrbaPY", + "text": "MotionScape is your SwiftUI animation's playground as a developer. You can see all animations and their parameters in effect with beautifully designed and handcrafted animation examples. Best of all: directly preview and export your settings as production-ready SwiftUI code that you can use in your apps as-is.\n\nSupercharge your apps with animations and get to know how to use them - with MotionScape!\n\nDownload MotionScape from the Mac AppStore: \nhttps://gstrm.io/motionscape-yt\n\nWebpage:\nhttps://getstream.github.io/motionscape-app/\n\nSwiftUI chat messaging:\nhttps://getstream.io/chat/sdk/swiftui/\n...", + "image_url": "https://i.ytimg.com/vi/xOX7MsrbaPY/mqdefault.jpg", + "thumb_url": "https://i.ytimg.com/vi/xOX7MsrbaPY/mqdefault.jpg", + "asset_url": "https://www.youtube.com/watch?v=xOX7MsrbaPY", "og_scrape_url": "https://youtube.com/watch?v=xOX7MsrbaPY" } ], @@ -49,17 +51,17 @@ }, "reply_count": 0, "deleted_reply_count": 0, - "cid": "messaging:cf770a2e-d32f-4be2-88f1-33ce7a478de1", - "created_at": "2025-03-01T00:16:48.692722Z", - "updated_at": "2025-03-01T00:16:48.692722Z", + "cid": "messaging:277d1327-0afd-4d76-87e8-fac1b3231ba7", + "created_at": "2025-03-15T00:15:59.807218Z", + "updated_at": "2025-03-15T00:15:59.807218Z", "shadowed": false, "mentioned_users": [ ], "i18n": { + "id_text": "https://youtube.com/watch?v=xOX7MsrbaPY", "ru_text": "https://youtube.com/watch?v=xOX7MsrbaPY", - "language": "id", - "id_text": "https://youtube.com/watch?v=xOX7MsrbaPY" + "language": "id" }, "silent": false, "pinned": false, @@ -70,5 +72,5 @@ ] }, - "duration": "238.38ms" + "duration": "313.78ms" } \ No newline at end of file diff --git a/TestTools/StreamChatTestMockServer/Fixtures/JSONs/ws_events.json b/TestTools/StreamChatTestMockServer/Fixtures/JSONs/ws_events.json index 164a45e573b..2f1e2babf0f 100644 --- a/TestTools/StreamChatTestMockServer/Fixtures/JSONs/ws_events.json +++ b/TestTools/StreamChatTestMockServer/Fixtures/JSONs/ws_events.json @@ -1,7 +1,7 @@ { "type": "typing.start", - "cid": "messaging:cf770a2e-d32f-4be2-88f1-33ce7a478de1", - "channel_id": "cf770a2e-d32f-4be2-88f1-33ce7a478de1", + "cid": "messaging:277d1327-0afd-4d76-87e8-fac1b3231ba7", + "channel_id": "277d1327-0afd-4d76-87e8-fac1b3231ba7", "channel_type": "messaging", "user": { "id": "luke_skywalker", @@ -13,10 +13,10 @@ ], "created_at": "2024-04-04T09:26:11.805899Z", - "updated_at": "2025-02-28T04:46:37.3153Z", + "updated_at": "2025-03-04T17:42:53.930104Z", "banned": false, "online": true, - "last_active": "2025-03-01T00:16:41.464293451Z", + "last_active": "2025-03-15T00:15:52.376423417Z", "blocked_user_ids": [ ], @@ -33,184 +33,184 @@ { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "80d83a56613f579bf887ed233f28dc2f8621cf45fd026d0ef81e0d2cae520bfcc6fc4701d9c900e12111729b869fa3a9ee57b1f0304708f262bebc77095aa18d745d6e83c168dfdf747faeb9cc15226d", - "created_at": "2025-02-28T14:48:03.362107Z", + "id": "970992ef7218e0f764d5b7c2db4101656139af2bfe04e381ac2b8260bc59203e", + "created_at": "2025-03-14T20:15:24.027442Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "80a30a9870ebbf3ac821a6d05307ff1c07ad4244df0221aa982b3da4d323c90bc089f88bcf1b0e5eb267464c9dfbc2f7e4d3b23e65f0a5fc1f2a614f9ecef2ed3680a74b5b5f2ebf715fd201ef209a4f", - "created_at": "2025-02-28T13:28:33.09545Z", + "id": "80fcd0790fdf87a1d7dbff85e9d63996d5a1f6c19ea9ce323ab08935f313de88b03a1ede97d9297254d34b5a7e296d4f6869dc460c887a4a02f9322c6813733a067c20e5a03e1cefb09352b09e6456e9", + "created_at": "2025-03-14T09:10:44.513823Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "808e1f56528bc828494129cc6a00db8305925b4e62ce0080445edd44df855ed88f2bd1ab047c02e05f5fcc01aa4c48bfd16fe5a5b7007d8d883f352a21f4735db0b413116f7ed56ce03e9bcb1c183ec7", - "created_at": "2025-02-28T13:16:34.450115Z", + "id": "7e88aa732165ab5c0504b11b7c965c8b4bbfe4bb8b48c640fc3dc7ef3a9a4723", + "created_at": "2025-03-14T07:36:53.795178Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "809065933d06e42d27179dfe7f24ef7c34e74c0898c184cc1de0abd791f0f9d2a1342ad140129c3a26ba7a4f86b3534358475d9964024ff373bc2c705bc2d999cbbe0402af60077fb7af6c1f73295bd7", - "created_at": "2025-02-27T15:44:06.136153Z", + "id": "80ecacba23dc64a727442d627e9bd6f444f9e412f135c3d6d138a24d479dfca4fd108e72eee79c45b22fbf890a29f59b407c333461e358d4b1cbfc4c79456c59a4bbfc27ab829fedc56f94456316d053", + "created_at": "2025-03-13T21:44:08.488516Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "34057215a44109103833fffd0233abd2f00178ada4a88c7134bd5216392a44a5", - "created_at": "2025-02-27T10:27:00.77165Z", + "id": "80145fcb19b30e2a1b6c8a988fce57cd295acb8194a7c59b438e54c4d6309a762f1c6626f2f49bce02161c8da32b7ec3d3507857f69ca1c04a30499494400b11f166710c865b7cdc2d9cd5fd2613efbe", + "created_at": "2025-03-13T12:30:05.817314Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "8073fd3d547fdbb7e82fe9dceb476016339ca5ffc9ffa6c921178ba8212a5cbb2755639217a43fcfc78c32af4cf6fbda8de895aca2db7877548528b9b3823520198ee77066f268e5518bd47034e4510a", - "created_at": "2025-02-26T07:42:12.632215Z", + "id": "8068d511901e2a868de612b11b5d67cdbca298a4362beff50cf7ff8a17e559af852f86d6df80061ce9eb9d1d1495fd0859607b8935f1b9e13bcef4c4934f2b1e8187392c11507057432c5742c5ab94d7", + "created_at": "2025-03-13T10:52:34.639454Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "806e4e741a0f3bbf5537b4e721254c9c779f7fe60072784adaf9388a5ec242efb3fa3bf92d1a156e523bf22406f157411626f5bdeed7a9a38778a993f2ebc27fd357f80fa55b6db5ccf8950189ad73c1", - "created_at": "2025-02-25T21:19:43.832593Z", + "id": "80415a8ca8f251ab6e9529270d5f2ac837a9f16f9f80ad52230d0c16bbc9491e8226b22c3035501fccb083cad8cb629403e2a204f66719878dfc947970add889c0ca92c161058106a0b9c25bebbaeab4", + "created_at": "2025-03-11T22:07:17.920547Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "018dcb3e3abb7f114ff48c8578b22deda08f59b552b8b2223345f3a324ae33a1", - "created_at": "2025-02-24T19:01:55.143254Z", + "id": "d97580a08acbd6dcae5c9f933a1e6fda90c8731774d4b59a3009d763137960d5", + "created_at": "2025-03-11T08:05:12.083551Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "80d8da89823d58917a0aa8e3960a8a58c4916ef019349a1329e328122dd0933581787e7db1b8de83188150d30ebf3bcc87773d152d7756ba0473ddfbcc912137e63b3edfe135768ba0cbe0a45e7fec9a", - "created_at": "2025-02-21T16:31:52.93218Z", + "id": "800ea64bdf895e7233e38e27f538476aae4280e56bc5c2c0277ddc477495632d54f987dc006d70eeebaf474db586e17fbdcc0f1dd25996a0aa0f8110bce78d8ee5e02faff15b4b07832422ca3d89f0c4", + "created_at": "2025-03-10T04:46:42.213717Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "78672cd7b3eaaa8dd0bfea4f7437565e1144a2473c1f8f4be8abe18078f30083", - "created_at": "2025-02-20T11:53:41.838222Z", + "id": "80a9f3afb592e51055344bc158d91ad74ddabf0adf44ad9f60fe3847fe790d7151c9d4001d37f7f0ed8c4aaebf86a5a475f67e70222c4da8e96cf2eaea2a00b7fd502bdf8d52eb3b9753f0be6efb38f5", + "created_at": "2025-03-07T06:27:13.076238Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "80908716fdcadf1ef9b49b0c4cdacf324152c4780c4934719dbbc60fb136c4d75a0e5f71acd43c2ed55b394a727cffc9a226fef342b470ee4d738b5798b777f29b104c7e4cd5e8fd56f1b69cf2d33c03", - "created_at": "2025-02-17T13:18:44.245138Z", + "id": "8024a6916f047a2e07ae92321491c2fdbebf6b39175da172561a12e0c5ec48a1129586f98e43ad9f12c7205367b3c37290cec7d51497b63789c8d9462a37433eefa776422627666cde71fa85f8616a56", + "created_at": "2025-03-06T06:04:30.710001Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "80a09056e398cab73a0e1473d8f43d9cc2555deb42e64b13efa9ff7f3fce458b21638d51e49432ccea4375010f930216e9fc55d3925400b78e72dcfd11e8fc8a2ac1b05452c438739a91177abbe31fdb", - "created_at": "2025-02-16T09:25:53.105629Z", + "id": "809065933d06e42d27179dfe7f24ef7c34e74c0898c184cc1de0abd791f0f9d2a1342ad140129c3a26ba7a4f86b3534358475d9964024ff373bc2c705bc2d999cbbe0402af60077fb7af6c1f73295bd7", + "created_at": "2025-02-27T15:44:06.136153Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "e2c6bed363247a93ea49699385e50de99efba5707808cbd7b2d3f4e46a7cbfb9", - "created_at": "2025-02-13T17:54:30.965611Z", + "id": "34057215a44109103833fffd0233abd2f00178ada4a88c7134bd5216392a44a5", + "created_at": "2025-02-27T10:27:00.77165Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "8078596852ae3ecc7bb8d20eb1bde24d596115270e266be1e7164009c28c841c89120222e5594b8929bafb7b55ec47e5b1db2e1274b6e0c9a8f24ba1087832d4dc8acefc857be26848f2b074fdaa42fe", - "created_at": "2025-02-12T13:52:59.060649Z", + "id": "8073fd3d547fdbb7e82fe9dceb476016339ca5ffc9ffa6c921178ba8212a5cbb2755639217a43fcfc78c32af4cf6fbda8de895aca2db7877548528b9b3823520198ee77066f268e5518bd47034e4510a", + "created_at": "2025-02-26T07:42:12.632215Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "805fbd71d240360c14b785cd89f59846acf40e15514e3cf89efdbc30f360999873c4713b6fd6f192072c075c41243b82f8b89ea4880f7694f72815934477e7cf8d80c303d7bb25c8c0730e6268a1e3d2", - "created_at": "2025-02-12T10:55:34.960205Z", + "id": "806e4e741a0f3bbf5537b4e721254c9c779f7fe60072784adaf9388a5ec242efb3fa3bf92d1a156e523bf22406f157411626f5bdeed7a9a38778a993f2ebc27fd357f80fa55b6db5ccf8950189ad73c1", + "created_at": "2025-02-25T21:19:43.832593Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "2716b6f605e691bf7dc7d88d1a45968dd6807ed91dbbf793777d152f796994b0", - "created_at": "2025-02-11T01:03:34.75674Z", + "id": "018dcb3e3abb7f114ff48c8578b22deda08f59b552b8b2223345f3a324ae33a1", + "created_at": "2025-02-24T19:01:55.143254Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "809975048776300710e9bf304eabc27813c3042266dc085420362ea254ebeccea39666720bc25ffc5a022b79062f1e5f1f1de6d1565850cc78ba3c9df1a810e7d4128b73c2f76210189febf4ee0df9b1", - "created_at": "2025-02-10T01:52:00.239203Z", + "id": "80d8da89823d58917a0aa8e3960a8a58c4916ef019349a1329e328122dd0933581787e7db1b8de83188150d30ebf3bcc87773d152d7756ba0473ddfbcc912137e63b3edfe135768ba0cbe0a45e7fec9a", + "created_at": "2025-02-21T16:31:52.93218Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "8082e4f123b0f83543d1f7c04920c76ec7d4b4db9d8f2e8ff0cc4daeef338209be72df2b35257cfdb86623c14d241cf1d1f42b78fef01e16052d13b03f75ed135360886f1900d3a0e80e97b268514c77", - "created_at": "2025-02-09T10:04:50.694565Z", + "id": "78672cd7b3eaaa8dd0bfea4f7437565e1144a2473c1f8f4be8abe18078f30083", + "created_at": "2025-02-20T11:53:41.838222Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "809a57e2ed4470cb0b372e79d31cff19276879f5b312b3b71e51fc05ad338bbda27220c4f36c1283e0340d6b8816702d123dda05604dfc0d9a2eae03099f718db1f14f13de887394280380cbcb945223", - "created_at": "2025-02-08T13:42:01.054257Z", + "id": "80908716fdcadf1ef9b49b0c4cdacf324152c4780c4934719dbbc60fb136c4d75a0e5f71acd43c2ed55b394a727cffc9a226fef342b470ee4d738b5798b777f29b104c7e4cd5e8fd56f1b69cf2d33c03", + "created_at": "2025-02-17T13:18:44.245138Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "800dd2e8d35942e0a2124b71e87dcb54467f63b148190dbd04821e71100924fdcf58d8cc17eb1030529f07bfaae1bc5c2f9313139067e7392edf1fdadf837762409698640194be2ca788aa9b5660ff4d", - "created_at": "2025-02-07T09:29:01.123928Z", + "id": "80a09056e398cab73a0e1473d8f43d9cc2555deb42e64b13efa9ff7f3fce458b21638d51e49432ccea4375010f930216e9fc55d3925400b78e72dcfd11e8fc8a2ac1b05452c438739a91177abbe31fdb", + "created_at": "2025-02-16T09:25:53.105629Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "8009a9c2db8394cdaa8ebd8f0f5731ba1fe28c3cc89397b8e38b0d55b018cafead52512e0d9dfbd10ca9abaacbfa1e96586f1e2c6a4f831977607fa415188249f6d88b7369e476554f0ce8a23e033f49", - "created_at": "2025-02-06T07:45:34.135591Z", + "id": "e2c6bed363247a93ea49699385e50de99efba5707808cbd7b2d3f4e46a7cbfb9", + "created_at": "2025-02-13T17:54:30.965611Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "adcc46baccb0cc4b2dfd893f7762b6ee15b0f9d9e39c014286a501dcce558ec3", - "created_at": "2025-01-29T12:48:17.917988Z", + "id": "8078596852ae3ecc7bb8d20eb1bde24d596115270e266be1e7164009c28c841c89120222e5594b8929bafb7b55ec47e5b1db2e1274b6e0c9a8f24ba1087832d4dc8acefc857be26848f2b074fdaa42fe", + "created_at": "2025-02-12T13:52:59.060649Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "27dc3cd279808ba179d46e04a2e95bc17a94062dfc91e1a317d7e39c314f65c6", - "created_at": "2025-01-27T09:26:50.733298Z", + "id": "805fbd71d240360c14b785cd89f59846acf40e15514e3cf89efdbc30f360999873c4713b6fd6f192072c075c41243b82f8b89ea4880f7694f72815934477e7cf8d80c303d7bb25c8c0730e6268a1e3d2", + "created_at": "2025-02-12T10:55:34.960205Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "806dcda419b98288b170fcaee122e709197f8ae3c727329f1ea3ec2aed31419acd1028da485a462e39850aec933df018da4fb2d75f02f4a003f7749084d6b4a37818caffc674c41f947592f648155a93", - "created_at": "2025-01-27T07:18:18.62698Z", + "id": "2716b6f605e691bf7dc7d88d1a45968dd6807ed91dbbf793777d152f796994b0", + "created_at": "2025-02-11T01:03:34.75674Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "80ca028a4646d58ef07166eaed2c5f068430fb9d7aa6b2bb94d53f8ce6261df2f932611aea12cad01a7b2cbc5169a4a0242c8d95c78ed5cde48bc139414ec63bbf696a56fb7c9b07218fa17bf8ba0aec", - "created_at": "2025-01-26T19:17:41.00587Z", + "id": "809975048776300710e9bf304eabc27813c3042266dc085420362ea254ebeccea39666720bc25ffc5a022b79062f1e5f1f1de6d1565850cc78ba3c9df1a810e7d4128b73c2f76210189febf4ee0df9b1", + "created_at": "2025-02-10T01:52:00.239203Z", "user_id": "luke_skywalker" } ], "invisible": false, - "pando": "{\"speciality\":\"ios engineer\"}", - "birthland": "Tatooine", "team": "test", - "type": "team" + "type": "team", + "pando": "{\"speciality\":\"ios engineer\"}", + "birthland": "Tatooine" }, - "created_at": "2025-03-01T00:16:44.115293218Z" + "created_at": "2025-03-15T00:15:54.695807648Z" } \ No newline at end of file diff --git a/TestTools/StreamChatTestMockServer/Fixtures/JSONs/ws_events_channel.json b/TestTools/StreamChatTestMockServer/Fixtures/JSONs/ws_events_channel.json index 488c80b94a9..7f673ec72ca 100644 --- a/TestTools/StreamChatTestMockServer/Fixtures/JSONs/ws_events_channel.json +++ b/TestTools/StreamChatTestMockServer/Fixtures/JSONs/ws_events_channel.json @@ -1,18 +1,18 @@ { "type": "channel.updated", - "created_at": "2025-03-01T00:16:46.393700713Z", - "cid": "messaging:cf770a2e-d32f-4be2-88f1-33ce7a478de1", - "channel_last_message_at": "2025-03-01T00:16:45.057386Z", + "created_at": "2025-03-15T00:15:57.908839203Z", + "cid": "messaging:277d1327-0afd-4d76-87e8-fac1b3231ba7", + "channel_last_message_at": "2025-03-15T00:15:56.802706Z", "channel_member_count": 4, "channel_type": "messaging", - "channel_id": "cf770a2e-d32f-4be2-88f1-33ce7a478de1", + "channel_id": "277d1327-0afd-4d76-87e8-fac1b3231ba7", "channel": { - "id": "cf770a2e-d32f-4be2-88f1-33ce7a478de1", + "id": "277d1327-0afd-4d76-87e8-fac1b3231ba7", "type": "messaging", - "cid": "messaging:cf770a2e-d32f-4be2-88f1-33ce7a478de1", - "last_message_at": "2025-03-01T00:16:45.057386Z", - "created_at": "2025-03-01T00:16:42.426556Z", - "updated_at": "2025-03-01T00:16:42.426557Z", + "cid": "messaging:277d1327-0afd-4d76-87e8-fac1b3231ba7", + "last_message_at": "2025-03-15T00:15:56.802706Z", + "created_at": "2025-03-15T00:15:53.237136Z", + "updated_at": "2025-03-15T00:15:53.237137Z", "created_by": { "id": "luke_skywalker", "name": "Luke Skywalker", @@ -23,10 +23,10 @@ ], "created_at": "2024-04-04T09:26:11.805899Z", - "updated_at": "2025-02-28T04:46:37.3153Z", + "updated_at": "2025-03-04T17:42:53.930104Z", "banned": false, "online": true, - "last_active": "2025-03-01T00:16:41.464293451Z", + "last_active": "2025-03-15T00:15:52.376423417Z", "blocked_user_ids": [ ], @@ -43,184 +43,184 @@ { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "80d83a56613f579bf887ed233f28dc2f8621cf45fd026d0ef81e0d2cae520bfcc6fc4701d9c900e12111729b869fa3a9ee57b1f0304708f262bebc77095aa18d745d6e83c168dfdf747faeb9cc15226d", - "created_at": "2025-02-28T14:48:03.362107Z", + "id": "970992ef7218e0f764d5b7c2db4101656139af2bfe04e381ac2b8260bc59203e", + "created_at": "2025-03-14T20:15:24.027442Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "80a30a9870ebbf3ac821a6d05307ff1c07ad4244df0221aa982b3da4d323c90bc089f88bcf1b0e5eb267464c9dfbc2f7e4d3b23e65f0a5fc1f2a614f9ecef2ed3680a74b5b5f2ebf715fd201ef209a4f", - "created_at": "2025-02-28T13:28:33.09545Z", + "id": "80fcd0790fdf87a1d7dbff85e9d63996d5a1f6c19ea9ce323ab08935f313de88b03a1ede97d9297254d34b5a7e296d4f6869dc460c887a4a02f9322c6813733a067c20e5a03e1cefb09352b09e6456e9", + "created_at": "2025-03-14T09:10:44.513823Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "808e1f56528bc828494129cc6a00db8305925b4e62ce0080445edd44df855ed88f2bd1ab047c02e05f5fcc01aa4c48bfd16fe5a5b7007d8d883f352a21f4735db0b413116f7ed56ce03e9bcb1c183ec7", - "created_at": "2025-02-28T13:16:34.450115Z", + "id": "7e88aa732165ab5c0504b11b7c965c8b4bbfe4bb8b48c640fc3dc7ef3a9a4723", + "created_at": "2025-03-14T07:36:53.795178Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "809065933d06e42d27179dfe7f24ef7c34e74c0898c184cc1de0abd791f0f9d2a1342ad140129c3a26ba7a4f86b3534358475d9964024ff373bc2c705bc2d999cbbe0402af60077fb7af6c1f73295bd7", - "created_at": "2025-02-27T15:44:06.136153Z", + "id": "80ecacba23dc64a727442d627e9bd6f444f9e412f135c3d6d138a24d479dfca4fd108e72eee79c45b22fbf890a29f59b407c333461e358d4b1cbfc4c79456c59a4bbfc27ab829fedc56f94456316d053", + "created_at": "2025-03-13T21:44:08.488516Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "34057215a44109103833fffd0233abd2f00178ada4a88c7134bd5216392a44a5", - "created_at": "2025-02-27T10:27:00.77165Z", + "id": "80145fcb19b30e2a1b6c8a988fce57cd295acb8194a7c59b438e54c4d6309a762f1c6626f2f49bce02161c8da32b7ec3d3507857f69ca1c04a30499494400b11f166710c865b7cdc2d9cd5fd2613efbe", + "created_at": "2025-03-13T12:30:05.817314Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "8073fd3d547fdbb7e82fe9dceb476016339ca5ffc9ffa6c921178ba8212a5cbb2755639217a43fcfc78c32af4cf6fbda8de895aca2db7877548528b9b3823520198ee77066f268e5518bd47034e4510a", - "created_at": "2025-02-26T07:42:12.632215Z", + "id": "8068d511901e2a868de612b11b5d67cdbca298a4362beff50cf7ff8a17e559af852f86d6df80061ce9eb9d1d1495fd0859607b8935f1b9e13bcef4c4934f2b1e8187392c11507057432c5742c5ab94d7", + "created_at": "2025-03-13T10:52:34.639454Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "806e4e741a0f3bbf5537b4e721254c9c779f7fe60072784adaf9388a5ec242efb3fa3bf92d1a156e523bf22406f157411626f5bdeed7a9a38778a993f2ebc27fd357f80fa55b6db5ccf8950189ad73c1", - "created_at": "2025-02-25T21:19:43.832593Z", + "id": "80415a8ca8f251ab6e9529270d5f2ac837a9f16f9f80ad52230d0c16bbc9491e8226b22c3035501fccb083cad8cb629403e2a204f66719878dfc947970add889c0ca92c161058106a0b9c25bebbaeab4", + "created_at": "2025-03-11T22:07:17.920547Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "018dcb3e3abb7f114ff48c8578b22deda08f59b552b8b2223345f3a324ae33a1", - "created_at": "2025-02-24T19:01:55.143254Z", + "id": "d97580a08acbd6dcae5c9f933a1e6fda90c8731774d4b59a3009d763137960d5", + "created_at": "2025-03-11T08:05:12.083551Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "80d8da89823d58917a0aa8e3960a8a58c4916ef019349a1329e328122dd0933581787e7db1b8de83188150d30ebf3bcc87773d152d7756ba0473ddfbcc912137e63b3edfe135768ba0cbe0a45e7fec9a", - "created_at": "2025-02-21T16:31:52.93218Z", + "id": "800ea64bdf895e7233e38e27f538476aae4280e56bc5c2c0277ddc477495632d54f987dc006d70eeebaf474db586e17fbdcc0f1dd25996a0aa0f8110bce78d8ee5e02faff15b4b07832422ca3d89f0c4", + "created_at": "2025-03-10T04:46:42.213717Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "78672cd7b3eaaa8dd0bfea4f7437565e1144a2473c1f8f4be8abe18078f30083", - "created_at": "2025-02-20T11:53:41.838222Z", + "id": "80a9f3afb592e51055344bc158d91ad74ddabf0adf44ad9f60fe3847fe790d7151c9d4001d37f7f0ed8c4aaebf86a5a475f67e70222c4da8e96cf2eaea2a00b7fd502bdf8d52eb3b9753f0be6efb38f5", + "created_at": "2025-03-07T06:27:13.076238Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "80908716fdcadf1ef9b49b0c4cdacf324152c4780c4934719dbbc60fb136c4d75a0e5f71acd43c2ed55b394a727cffc9a226fef342b470ee4d738b5798b777f29b104c7e4cd5e8fd56f1b69cf2d33c03", - "created_at": "2025-02-17T13:18:44.245138Z", + "id": "8024a6916f047a2e07ae92321491c2fdbebf6b39175da172561a12e0c5ec48a1129586f98e43ad9f12c7205367b3c37290cec7d51497b63789c8d9462a37433eefa776422627666cde71fa85f8616a56", + "created_at": "2025-03-06T06:04:30.710001Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "80a09056e398cab73a0e1473d8f43d9cc2555deb42e64b13efa9ff7f3fce458b21638d51e49432ccea4375010f930216e9fc55d3925400b78e72dcfd11e8fc8a2ac1b05452c438739a91177abbe31fdb", - "created_at": "2025-02-16T09:25:53.105629Z", + "id": "809065933d06e42d27179dfe7f24ef7c34e74c0898c184cc1de0abd791f0f9d2a1342ad140129c3a26ba7a4f86b3534358475d9964024ff373bc2c705bc2d999cbbe0402af60077fb7af6c1f73295bd7", + "created_at": "2025-02-27T15:44:06.136153Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "e2c6bed363247a93ea49699385e50de99efba5707808cbd7b2d3f4e46a7cbfb9", - "created_at": "2025-02-13T17:54:30.965611Z", + "id": "34057215a44109103833fffd0233abd2f00178ada4a88c7134bd5216392a44a5", + "created_at": "2025-02-27T10:27:00.77165Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "8078596852ae3ecc7bb8d20eb1bde24d596115270e266be1e7164009c28c841c89120222e5594b8929bafb7b55ec47e5b1db2e1274b6e0c9a8f24ba1087832d4dc8acefc857be26848f2b074fdaa42fe", - "created_at": "2025-02-12T13:52:59.060649Z", + "id": "8073fd3d547fdbb7e82fe9dceb476016339ca5ffc9ffa6c921178ba8212a5cbb2755639217a43fcfc78c32af4cf6fbda8de895aca2db7877548528b9b3823520198ee77066f268e5518bd47034e4510a", + "created_at": "2025-02-26T07:42:12.632215Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "805fbd71d240360c14b785cd89f59846acf40e15514e3cf89efdbc30f360999873c4713b6fd6f192072c075c41243b82f8b89ea4880f7694f72815934477e7cf8d80c303d7bb25c8c0730e6268a1e3d2", - "created_at": "2025-02-12T10:55:34.960205Z", + "id": "806e4e741a0f3bbf5537b4e721254c9c779f7fe60072784adaf9388a5ec242efb3fa3bf92d1a156e523bf22406f157411626f5bdeed7a9a38778a993f2ebc27fd357f80fa55b6db5ccf8950189ad73c1", + "created_at": "2025-02-25T21:19:43.832593Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "2716b6f605e691bf7dc7d88d1a45968dd6807ed91dbbf793777d152f796994b0", - "created_at": "2025-02-11T01:03:34.75674Z", + "id": "018dcb3e3abb7f114ff48c8578b22deda08f59b552b8b2223345f3a324ae33a1", + "created_at": "2025-02-24T19:01:55.143254Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "809975048776300710e9bf304eabc27813c3042266dc085420362ea254ebeccea39666720bc25ffc5a022b79062f1e5f1f1de6d1565850cc78ba3c9df1a810e7d4128b73c2f76210189febf4ee0df9b1", - "created_at": "2025-02-10T01:52:00.239203Z", + "id": "80d8da89823d58917a0aa8e3960a8a58c4916ef019349a1329e328122dd0933581787e7db1b8de83188150d30ebf3bcc87773d152d7756ba0473ddfbcc912137e63b3edfe135768ba0cbe0a45e7fec9a", + "created_at": "2025-02-21T16:31:52.93218Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "8082e4f123b0f83543d1f7c04920c76ec7d4b4db9d8f2e8ff0cc4daeef338209be72df2b35257cfdb86623c14d241cf1d1f42b78fef01e16052d13b03f75ed135360886f1900d3a0e80e97b268514c77", - "created_at": "2025-02-09T10:04:50.694565Z", + "id": "78672cd7b3eaaa8dd0bfea4f7437565e1144a2473c1f8f4be8abe18078f30083", + "created_at": "2025-02-20T11:53:41.838222Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "809a57e2ed4470cb0b372e79d31cff19276879f5b312b3b71e51fc05ad338bbda27220c4f36c1283e0340d6b8816702d123dda05604dfc0d9a2eae03099f718db1f14f13de887394280380cbcb945223", - "created_at": "2025-02-08T13:42:01.054257Z", + "id": "80908716fdcadf1ef9b49b0c4cdacf324152c4780c4934719dbbc60fb136c4d75a0e5f71acd43c2ed55b394a727cffc9a226fef342b470ee4d738b5798b777f29b104c7e4cd5e8fd56f1b69cf2d33c03", + "created_at": "2025-02-17T13:18:44.245138Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "800dd2e8d35942e0a2124b71e87dcb54467f63b148190dbd04821e71100924fdcf58d8cc17eb1030529f07bfaae1bc5c2f9313139067e7392edf1fdadf837762409698640194be2ca788aa9b5660ff4d", - "created_at": "2025-02-07T09:29:01.123928Z", + "id": "80a09056e398cab73a0e1473d8f43d9cc2555deb42e64b13efa9ff7f3fce458b21638d51e49432ccea4375010f930216e9fc55d3925400b78e72dcfd11e8fc8a2ac1b05452c438739a91177abbe31fdb", + "created_at": "2025-02-16T09:25:53.105629Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "8009a9c2db8394cdaa8ebd8f0f5731ba1fe28c3cc89397b8e38b0d55b018cafead52512e0d9dfbd10ca9abaacbfa1e96586f1e2c6a4f831977607fa415188249f6d88b7369e476554f0ce8a23e033f49", - "created_at": "2025-02-06T07:45:34.135591Z", + "id": "e2c6bed363247a93ea49699385e50de99efba5707808cbd7b2d3f4e46a7cbfb9", + "created_at": "2025-02-13T17:54:30.965611Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "adcc46baccb0cc4b2dfd893f7762b6ee15b0f9d9e39c014286a501dcce558ec3", - "created_at": "2025-01-29T12:48:17.917988Z", + "id": "8078596852ae3ecc7bb8d20eb1bde24d596115270e266be1e7164009c28c841c89120222e5594b8929bafb7b55ec47e5b1db2e1274b6e0c9a8f24ba1087832d4dc8acefc857be26848f2b074fdaa42fe", + "created_at": "2025-02-12T13:52:59.060649Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "27dc3cd279808ba179d46e04a2e95bc17a94062dfc91e1a317d7e39c314f65c6", - "created_at": "2025-01-27T09:26:50.733298Z", + "id": "805fbd71d240360c14b785cd89f59846acf40e15514e3cf89efdbc30f360999873c4713b6fd6f192072c075c41243b82f8b89ea4880f7694f72815934477e7cf8d80c303d7bb25c8c0730e6268a1e3d2", + "created_at": "2025-02-12T10:55:34.960205Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "806dcda419b98288b170fcaee122e709197f8ae3c727329f1ea3ec2aed31419acd1028da485a462e39850aec933df018da4fb2d75f02f4a003f7749084d6b4a37818caffc674c41f947592f648155a93", - "created_at": "2025-01-27T07:18:18.62698Z", + "id": "2716b6f605e691bf7dc7d88d1a45968dd6807ed91dbbf793777d152f796994b0", + "created_at": "2025-02-11T01:03:34.75674Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "80ca028a4646d58ef07166eaed2c5f068430fb9d7aa6b2bb94d53f8ce6261df2f932611aea12cad01a7b2cbc5169a4a0242c8d95c78ed5cde48bc139414ec63bbf696a56fb7c9b07218fa17bf8ba0aec", - "created_at": "2025-01-26T19:17:41.00587Z", + "id": "809975048776300710e9bf304eabc27813c3042266dc085420362ea254ebeccea39666720bc25ffc5a022b79062f1e5f1f1de6d1565850cc78ba3c9df1a810e7d4128b73c2f76210189febf4ee0df9b1", + "created_at": "2025-02-10T01:52:00.239203Z", "user_id": "luke_skywalker" } ], "invisible": false, + "pando": "{\"speciality\":\"ios engineer\"}", "birthland": "Tatooine", "team": "test", - "type": "team", - "pando": "{\"speciality\":\"ios engineer\"}" + "type": "team" }, "frozen": false, "disabled": false, @@ -237,10 +237,10 @@ ], "created_at": "2024-04-22T06:42:08.562992Z", - "updated_at": "2024-07-11T05:45:57.296628Z", + "updated_at": "2025-03-03T10:00:37.133281Z", "banned": false, "online": false, - "last_active": "2025-02-27T16:18:01.645093Z", + "last_active": "2025-03-13T18:04:51.960419Z", "blocked_user_ids": [ ], @@ -254,6 +254,27 @@ } }, "devices": [ + { + "push_provider": "apn", + "push_provider_name": "APN-Configuration", + "id": "80f982d49f7b7e3c3a89b9463d30130c9d7c09d37afb9f5e068fcc3c96bf6a727a2178877764bd0d91d5ad2701f0d270e69e53751be92e476de68484f7ead5704e57a56355c557de23ce045680384c2f", + "created_at": "2025-03-11T14:28:48.579734Z", + "user_id": "count_dooku" + }, + { + "push_provider": "apn", + "push_provider_name": "APN-Configuration", + "id": "e76ad8caaa243d1df1487b27cf0d2ee454f21709b6b69c51e6fbee3702abd721", + "created_at": "2025-03-09T01:21:58.729901Z", + "user_id": "count_dooku" + }, + { + "push_provider": "apn", + "push_provider_name": "APN-Configuration", + "id": "806dd79d6620247dec1bcd0c112be289334fc19db6d102bddbb1f9cc6073ea25d01786ba87a507665216f6a8bcaeaf828c2358374d5b98370423856f1832351676ed828bc6a398c4f79b0d3e4e837a4b", + "created_at": "2025-03-03T09:55:46.384028Z", + "user_id": "count_dooku" + }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", @@ -326,8 +347,8 @@ "birthland": "Serenno" }, "status": "member", - "created_at": "2025-03-01T00:16:42.431151Z", - "updated_at": "2025-03-01T00:16:42.431151Z", + "created_at": "2025-03-15T00:15:53.24959Z", + "updated_at": "2025-03-15T00:15:53.24959Z", "banned": false, "shadow_banned": false, "role": "member", @@ -349,7 +370,7 @@ "updated_at": "2025-02-27T16:17:46.871132Z", "banned": false, "online": false, - "last_active": "2025-02-28T09:52:06.008333Z", + "last_active": "2025-03-14T17:10:33.441699Z", "blocked_user_ids": [ ], @@ -366,24 +387,50 @@ { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "80c1d91b2f37c3a1c13accec2c31982402cf8ea90ae8925d2514ff83bca53a51e76acf361c4bed27548dc0730b59774c74ae2c47dfefd8b7cefa32b00a1604ba22b8e41f1e17a44e4319ed3fb66253f5", - "created_at": "2025-02-27T10:35:26.432802Z", + "id": "80cd34aa5dab4617b45d27b6db9295d65f3c07a7daa17474aac8e0b7b5bf0f12c0594d906b157fffb69498ffb59d1bda54b70be450c310bf368cb160e07cd306cbb045e6a406d0148201880c98a16388", + "created_at": "2025-03-14T17:13:38.514634Z", "user_id": "han_solo" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "114c40171431de36d0e48e5fe9ba10880b092a1e1497453cb9718ec06641d07b", - "created_at": "2025-02-25T13:13:32.287365Z", + "id": "80d9d0bc03125a978459bc86d4aa4cc04ff4cc7bb279b35dc4568654a9d7acdf7a37adc2deaa936957fc9ab3b5e6d3aa85bf07329b06a66be5fe2b985cb0749ca90cfa50b2e928053d4e3ef4bab7b2bd", + "created_at": "2025-03-13T21:45:37.216501Z", "user_id": "han_solo" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "5d147efaa64b676bde946956172ac3c7235e96a02ab827173950000f1dc7de1f", - "created_at": "2025-02-20T12:13:17.376845Z", - "disabled": true, - "disabled_reason": "Unregistered", + "id": "80c8a0da779769580e9635d17365100495cdd9cda2233c7db995c5acef47eb53a4c87b834a5398f2b2223895dd83dcce90604e687bb01c52a9b1701b19498cbd0336d2be8fab1a50800cad2e27cb555a", + "created_at": "2025-03-12T02:55:24.755441Z", + "user_id": "han_solo" + }, + { + "push_provider": "apn", + "push_provider_name": "APN-Configuration", + "id": "8009715c5d17766a2ab457f9381189a6065761d20e50656707592528c960f1ec370b2bafc7936b550474aaef247cea3673a175dac38aeb26f08eca6fecb13e6b5e70e0367adc604bb574c8d35a4b7647", + "created_at": "2025-03-10T16:16:04.223903Z", + "user_id": "han_solo" + }, + { + "push_provider": "apn", + "push_provider_name": "APN-Configuration", + "id": "f62bff12b2c8c4faf8463c6ae5c675a8149ca3aaa2776b7753a9e8653927da4e", + "created_at": "2025-03-08T21:27:08.451268Z", + "user_id": "han_solo" + }, + { + "push_provider": "apn", + "push_provider_name": "APN-Configuration", + "id": "496c1a822944cac2201c1fe59fb245ae22025b00b6649756fd719ba513681c5c", + "created_at": "2025-03-06T09:09:35.570586Z", + "user_id": "han_solo" + }, + { + "push_provider": "apn", + "push_provider_name": "APN-Configuration", + "id": "80c1d91b2f37c3a1c13accec2c31982402cf8ea90ae8925d2514ff83bca53a51e76acf361c4bed27548dc0730b59774c74ae2c47dfefd8b7cefa32b00a1604ba22b8e41f1e17a44e4319ed3fb66253f5", + "created_at": "2025-02-27T10:35:26.432802Z", "user_id": "han_solo" }, { @@ -391,6 +438,8 @@ "push_provider_name": "APN-Configuration", "id": "14216b28af8556468ae8dbf08a5ea602f9deb9c2eb115d9b6aacf7f7bde74ade", "created_at": "2025-02-12T10:58:40.574878Z", + "disabled": true, + "disabled_reason": "Unregistered", "user_id": "han_solo" }, { @@ -497,49 +546,14 @@ "id": "b31ae9a7d13f81858bfb7a702d121bccaaf51dd0a1fa12126efc8a33def0d402", "created_at": "2024-12-19T20:29:50.716431Z", "user_id": "han_solo" - }, - { - "push_provider": "apn", - "push_provider_name": "APN-Configuration", - "id": "5f8f5cbda69dfa8bc1158028f49e1daaf842124b9b5ef4b17a05569df8dad695", - "created_at": "2024-12-18T14:27:58.298805Z", - "user_id": "han_solo" - }, - { - "push_provider": "apn", - "push_provider_name": "APN-Configuration", - "id": "978140014aac262974708a794269b73b90018fd72d533e9261dd73ffdafabb85", - "created_at": "2024-12-13T01:46:43.980788Z", - "user_id": "han_solo" - }, - { - "push_provider": "apn", - "push_provider_name": "APN-Configuration", - "id": "b7b7c7b2aa269e61b1dff22a79540eeed96af4bd32c94832aeae48935ae21c13", - "created_at": "2024-12-06T23:32:45.628448Z", - "user_id": "han_solo" - }, - { - "push_provider": "apn", - "push_provider_name": "APN-Configuration", - "id": "7523c55f366252b9091cd8edc0fc94c09cad64db5ecf132fb12031af97cc7b92", - "created_at": "2024-12-03T18:22:28.977342Z", - "user_id": "han_solo" - }, - { - "push_provider": "apn", - "push_provider_name": "APN-Configuration", - "id": "0d4faddf6be9780c5cb1e13825768308319c150ccab602a2a8528c2333cc27ef", - "created_at": "2024-12-03T11:38:29.165403Z", - "user_id": "han_solo" } ], "invisible": false, "birthland": "Corellia" }, "status": "member", - "created_at": "2025-03-01T00:16:42.431151Z", - "updated_at": "2025-03-01T00:16:42.431151Z", + "created_at": "2025-03-15T00:15:53.24959Z", + "updated_at": "2025-03-15T00:15:53.24959Z", "banned": false, "shadow_banned": false, "role": "member", @@ -558,10 +572,10 @@ ], "created_at": "2024-04-04T09:26:11.805899Z", - "updated_at": "2025-02-28T04:46:37.3153Z", + "updated_at": "2025-03-04T17:42:53.930104Z", "banned": false, "online": true, - "last_active": "2025-03-01T00:16:41.464293451Z", + "last_active": "2025-03-15T00:15:52.376423417Z", "blocked_user_ids": [ ], @@ -578,188 +592,188 @@ { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "80d83a56613f579bf887ed233f28dc2f8621cf45fd026d0ef81e0d2cae520bfcc6fc4701d9c900e12111729b869fa3a9ee57b1f0304708f262bebc77095aa18d745d6e83c168dfdf747faeb9cc15226d", - "created_at": "2025-02-28T14:48:03.362107Z", + "id": "970992ef7218e0f764d5b7c2db4101656139af2bfe04e381ac2b8260bc59203e", + "created_at": "2025-03-14T20:15:24.027442Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "80a30a9870ebbf3ac821a6d05307ff1c07ad4244df0221aa982b3da4d323c90bc089f88bcf1b0e5eb267464c9dfbc2f7e4d3b23e65f0a5fc1f2a614f9ecef2ed3680a74b5b5f2ebf715fd201ef209a4f", - "created_at": "2025-02-28T13:28:33.09545Z", + "id": "80fcd0790fdf87a1d7dbff85e9d63996d5a1f6c19ea9ce323ab08935f313de88b03a1ede97d9297254d34b5a7e296d4f6869dc460c887a4a02f9322c6813733a067c20e5a03e1cefb09352b09e6456e9", + "created_at": "2025-03-14T09:10:44.513823Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "808e1f56528bc828494129cc6a00db8305925b4e62ce0080445edd44df855ed88f2bd1ab047c02e05f5fcc01aa4c48bfd16fe5a5b7007d8d883f352a21f4735db0b413116f7ed56ce03e9bcb1c183ec7", - "created_at": "2025-02-28T13:16:34.450115Z", + "id": "7e88aa732165ab5c0504b11b7c965c8b4bbfe4bb8b48c640fc3dc7ef3a9a4723", + "created_at": "2025-03-14T07:36:53.795178Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "809065933d06e42d27179dfe7f24ef7c34e74c0898c184cc1de0abd791f0f9d2a1342ad140129c3a26ba7a4f86b3534358475d9964024ff373bc2c705bc2d999cbbe0402af60077fb7af6c1f73295bd7", - "created_at": "2025-02-27T15:44:06.136153Z", + "id": "80ecacba23dc64a727442d627e9bd6f444f9e412f135c3d6d138a24d479dfca4fd108e72eee79c45b22fbf890a29f59b407c333461e358d4b1cbfc4c79456c59a4bbfc27ab829fedc56f94456316d053", + "created_at": "2025-03-13T21:44:08.488516Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "34057215a44109103833fffd0233abd2f00178ada4a88c7134bd5216392a44a5", - "created_at": "2025-02-27T10:27:00.77165Z", + "id": "80145fcb19b30e2a1b6c8a988fce57cd295acb8194a7c59b438e54c4d6309a762f1c6626f2f49bce02161c8da32b7ec3d3507857f69ca1c04a30499494400b11f166710c865b7cdc2d9cd5fd2613efbe", + "created_at": "2025-03-13T12:30:05.817314Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "8073fd3d547fdbb7e82fe9dceb476016339ca5ffc9ffa6c921178ba8212a5cbb2755639217a43fcfc78c32af4cf6fbda8de895aca2db7877548528b9b3823520198ee77066f268e5518bd47034e4510a", - "created_at": "2025-02-26T07:42:12.632215Z", + "id": "8068d511901e2a868de612b11b5d67cdbca298a4362beff50cf7ff8a17e559af852f86d6df80061ce9eb9d1d1495fd0859607b8935f1b9e13bcef4c4934f2b1e8187392c11507057432c5742c5ab94d7", + "created_at": "2025-03-13T10:52:34.639454Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "806e4e741a0f3bbf5537b4e721254c9c779f7fe60072784adaf9388a5ec242efb3fa3bf92d1a156e523bf22406f157411626f5bdeed7a9a38778a993f2ebc27fd357f80fa55b6db5ccf8950189ad73c1", - "created_at": "2025-02-25T21:19:43.832593Z", + "id": "80415a8ca8f251ab6e9529270d5f2ac837a9f16f9f80ad52230d0c16bbc9491e8226b22c3035501fccb083cad8cb629403e2a204f66719878dfc947970add889c0ca92c161058106a0b9c25bebbaeab4", + "created_at": "2025-03-11T22:07:17.920547Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "018dcb3e3abb7f114ff48c8578b22deda08f59b552b8b2223345f3a324ae33a1", - "created_at": "2025-02-24T19:01:55.143254Z", + "id": "d97580a08acbd6dcae5c9f933a1e6fda90c8731774d4b59a3009d763137960d5", + "created_at": "2025-03-11T08:05:12.083551Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "80d8da89823d58917a0aa8e3960a8a58c4916ef019349a1329e328122dd0933581787e7db1b8de83188150d30ebf3bcc87773d152d7756ba0473ddfbcc912137e63b3edfe135768ba0cbe0a45e7fec9a", - "created_at": "2025-02-21T16:31:52.93218Z", + "id": "800ea64bdf895e7233e38e27f538476aae4280e56bc5c2c0277ddc477495632d54f987dc006d70eeebaf474db586e17fbdcc0f1dd25996a0aa0f8110bce78d8ee5e02faff15b4b07832422ca3d89f0c4", + "created_at": "2025-03-10T04:46:42.213717Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "78672cd7b3eaaa8dd0bfea4f7437565e1144a2473c1f8f4be8abe18078f30083", - "created_at": "2025-02-20T11:53:41.838222Z", + "id": "80a9f3afb592e51055344bc158d91ad74ddabf0adf44ad9f60fe3847fe790d7151c9d4001d37f7f0ed8c4aaebf86a5a475f67e70222c4da8e96cf2eaea2a00b7fd502bdf8d52eb3b9753f0be6efb38f5", + "created_at": "2025-03-07T06:27:13.076238Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "80908716fdcadf1ef9b49b0c4cdacf324152c4780c4934719dbbc60fb136c4d75a0e5f71acd43c2ed55b394a727cffc9a226fef342b470ee4d738b5798b777f29b104c7e4cd5e8fd56f1b69cf2d33c03", - "created_at": "2025-02-17T13:18:44.245138Z", + "id": "8024a6916f047a2e07ae92321491c2fdbebf6b39175da172561a12e0c5ec48a1129586f98e43ad9f12c7205367b3c37290cec7d51497b63789c8d9462a37433eefa776422627666cde71fa85f8616a56", + "created_at": "2025-03-06T06:04:30.710001Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "80a09056e398cab73a0e1473d8f43d9cc2555deb42e64b13efa9ff7f3fce458b21638d51e49432ccea4375010f930216e9fc55d3925400b78e72dcfd11e8fc8a2ac1b05452c438739a91177abbe31fdb", - "created_at": "2025-02-16T09:25:53.105629Z", + "id": "809065933d06e42d27179dfe7f24ef7c34e74c0898c184cc1de0abd791f0f9d2a1342ad140129c3a26ba7a4f86b3534358475d9964024ff373bc2c705bc2d999cbbe0402af60077fb7af6c1f73295bd7", + "created_at": "2025-02-27T15:44:06.136153Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "e2c6bed363247a93ea49699385e50de99efba5707808cbd7b2d3f4e46a7cbfb9", - "created_at": "2025-02-13T17:54:30.965611Z", + "id": "34057215a44109103833fffd0233abd2f00178ada4a88c7134bd5216392a44a5", + "created_at": "2025-02-27T10:27:00.77165Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "8078596852ae3ecc7bb8d20eb1bde24d596115270e266be1e7164009c28c841c89120222e5594b8929bafb7b55ec47e5b1db2e1274b6e0c9a8f24ba1087832d4dc8acefc857be26848f2b074fdaa42fe", - "created_at": "2025-02-12T13:52:59.060649Z", + "id": "8073fd3d547fdbb7e82fe9dceb476016339ca5ffc9ffa6c921178ba8212a5cbb2755639217a43fcfc78c32af4cf6fbda8de895aca2db7877548528b9b3823520198ee77066f268e5518bd47034e4510a", + "created_at": "2025-02-26T07:42:12.632215Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "805fbd71d240360c14b785cd89f59846acf40e15514e3cf89efdbc30f360999873c4713b6fd6f192072c075c41243b82f8b89ea4880f7694f72815934477e7cf8d80c303d7bb25c8c0730e6268a1e3d2", - "created_at": "2025-02-12T10:55:34.960205Z", + "id": "806e4e741a0f3bbf5537b4e721254c9c779f7fe60072784adaf9388a5ec242efb3fa3bf92d1a156e523bf22406f157411626f5bdeed7a9a38778a993f2ebc27fd357f80fa55b6db5ccf8950189ad73c1", + "created_at": "2025-02-25T21:19:43.832593Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "2716b6f605e691bf7dc7d88d1a45968dd6807ed91dbbf793777d152f796994b0", - "created_at": "2025-02-11T01:03:34.75674Z", + "id": "018dcb3e3abb7f114ff48c8578b22deda08f59b552b8b2223345f3a324ae33a1", + "created_at": "2025-02-24T19:01:55.143254Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "809975048776300710e9bf304eabc27813c3042266dc085420362ea254ebeccea39666720bc25ffc5a022b79062f1e5f1f1de6d1565850cc78ba3c9df1a810e7d4128b73c2f76210189febf4ee0df9b1", - "created_at": "2025-02-10T01:52:00.239203Z", + "id": "80d8da89823d58917a0aa8e3960a8a58c4916ef019349a1329e328122dd0933581787e7db1b8de83188150d30ebf3bcc87773d152d7756ba0473ddfbcc912137e63b3edfe135768ba0cbe0a45e7fec9a", + "created_at": "2025-02-21T16:31:52.93218Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "8082e4f123b0f83543d1f7c04920c76ec7d4b4db9d8f2e8ff0cc4daeef338209be72df2b35257cfdb86623c14d241cf1d1f42b78fef01e16052d13b03f75ed135360886f1900d3a0e80e97b268514c77", - "created_at": "2025-02-09T10:04:50.694565Z", + "id": "78672cd7b3eaaa8dd0bfea4f7437565e1144a2473c1f8f4be8abe18078f30083", + "created_at": "2025-02-20T11:53:41.838222Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "809a57e2ed4470cb0b372e79d31cff19276879f5b312b3b71e51fc05ad338bbda27220c4f36c1283e0340d6b8816702d123dda05604dfc0d9a2eae03099f718db1f14f13de887394280380cbcb945223", - "created_at": "2025-02-08T13:42:01.054257Z", + "id": "80908716fdcadf1ef9b49b0c4cdacf324152c4780c4934719dbbc60fb136c4d75a0e5f71acd43c2ed55b394a727cffc9a226fef342b470ee4d738b5798b777f29b104c7e4cd5e8fd56f1b69cf2d33c03", + "created_at": "2025-02-17T13:18:44.245138Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "800dd2e8d35942e0a2124b71e87dcb54467f63b148190dbd04821e71100924fdcf58d8cc17eb1030529f07bfaae1bc5c2f9313139067e7392edf1fdadf837762409698640194be2ca788aa9b5660ff4d", - "created_at": "2025-02-07T09:29:01.123928Z", + "id": "80a09056e398cab73a0e1473d8f43d9cc2555deb42e64b13efa9ff7f3fce458b21638d51e49432ccea4375010f930216e9fc55d3925400b78e72dcfd11e8fc8a2ac1b05452c438739a91177abbe31fdb", + "created_at": "2025-02-16T09:25:53.105629Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "8009a9c2db8394cdaa8ebd8f0f5731ba1fe28c3cc89397b8e38b0d55b018cafead52512e0d9dfbd10ca9abaacbfa1e96586f1e2c6a4f831977607fa415188249f6d88b7369e476554f0ce8a23e033f49", - "created_at": "2025-02-06T07:45:34.135591Z", + "id": "e2c6bed363247a93ea49699385e50de99efba5707808cbd7b2d3f4e46a7cbfb9", + "created_at": "2025-02-13T17:54:30.965611Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "adcc46baccb0cc4b2dfd893f7762b6ee15b0f9d9e39c014286a501dcce558ec3", - "created_at": "2025-01-29T12:48:17.917988Z", + "id": "8078596852ae3ecc7bb8d20eb1bde24d596115270e266be1e7164009c28c841c89120222e5594b8929bafb7b55ec47e5b1db2e1274b6e0c9a8f24ba1087832d4dc8acefc857be26848f2b074fdaa42fe", + "created_at": "2025-02-12T13:52:59.060649Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "27dc3cd279808ba179d46e04a2e95bc17a94062dfc91e1a317d7e39c314f65c6", - "created_at": "2025-01-27T09:26:50.733298Z", + "id": "805fbd71d240360c14b785cd89f59846acf40e15514e3cf89efdbc30f360999873c4713b6fd6f192072c075c41243b82f8b89ea4880f7694f72815934477e7cf8d80c303d7bb25c8c0730e6268a1e3d2", + "created_at": "2025-02-12T10:55:34.960205Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "806dcda419b98288b170fcaee122e709197f8ae3c727329f1ea3ec2aed31419acd1028da485a462e39850aec933df018da4fb2d75f02f4a003f7749084d6b4a37818caffc674c41f947592f648155a93", - "created_at": "2025-01-27T07:18:18.62698Z", + "id": "2716b6f605e691bf7dc7d88d1a45968dd6807ed91dbbf793777d152f796994b0", + "created_at": "2025-02-11T01:03:34.75674Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "80ca028a4646d58ef07166eaed2c5f068430fb9d7aa6b2bb94d53f8ce6261df2f932611aea12cad01a7b2cbc5169a4a0242c8d95c78ed5cde48bc139414ec63bbf696a56fb7c9b07218fa17bf8ba0aec", - "created_at": "2025-01-26T19:17:41.00587Z", + "id": "809975048776300710e9bf304eabc27813c3042266dc085420362ea254ebeccea39666720bc25ffc5a022b79062f1e5f1f1de6d1565850cc78ba3c9df1a810e7d4128b73c2f76210189febf4ee0df9b1", + "created_at": "2025-02-10T01:52:00.239203Z", "user_id": "luke_skywalker" } ], "invisible": false, - "team": "test", - "type": "team", "pando": "{\"speciality\":\"ios engineer\"}", - "birthland": "Tatooine" + "birthland": "Tatooine", + "team": "test", + "type": "team" }, "status": "member", - "created_at": "2025-03-01T00:16:42.431151Z", - "updated_at": "2025-03-01T00:16:42.431151Z", + "created_at": "2025-03-15T00:15:53.24959Z", + "updated_at": "2025-03-15T00:15:53.24959Z", "banned": false, "shadow_banned": false, "role": "owner", @@ -781,7 +795,7 @@ "updated_at": "2025-02-20T11:14:21.287666Z", "banned": false, "online": false, - "last_active": "2025-02-28T21:20:23.174867Z", + "last_active": "2025-03-14T13:17:25.910928Z", "blocked_user_ids": [ ], @@ -795,6 +809,13 @@ } }, "devices": [ + { + "push_provider": "apn", + "push_provider_name": "APN-Configuration", + "id": "8030b214266e8b3f4213b7020b09ba1a3ddfc2183c8d0585bc219704d67e2e386e094f7f734e8a9d000198321f92d57acda674d02e10dda7590724869901dd7af4e948ff653b7b236af9aad922e49ae2", + "created_at": "2025-03-04T07:45:22.930982Z", + "user_id": "leia_organa" + }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", @@ -969,8 +990,8 @@ "birthland": "Polis Massa" }, "status": "member", - "created_at": "2025-03-01T00:16:46.375847Z", - "updated_at": "2025-03-01T00:16:46.375847Z", + "created_at": "2025-03-15T00:15:57.890803Z", + "updated_at": "2025-03-15T00:15:57.890803Z", "banned": false, "shadow_banned": false, "role": "admin", @@ -1040,15 +1061,13 @@ ], "created_at": "2024-04-04T09:26:11.805899Z", - "updated_at": "2025-02-28T04:46:37.3153Z", + "updated_at": "2025-03-04T17:42:53.930104Z", "banned": false, "online": true, - "last_active": "2025-03-01T00:16:41.464293451Z", + "last_active": "2025-03-15T00:15:52.376423417Z", "blocked_user_ids": [ ], - "pando": "{\"speciality\":\"ios engineer\"}", - "birthland": "Tatooine", "privacy_settings": { "read_receipts": { "enabled": false @@ -1058,6 +1077,8 @@ } }, "team": "test", - "type": "team" + "type": "team", + "pando": "{\"speciality\":\"ios engineer\"}", + "birthland": "Tatooine" } } \ No newline at end of file diff --git a/TestTools/StreamChatTestMockServer/Fixtures/JSONs/ws_events_member.json b/TestTools/StreamChatTestMockServer/Fixtures/JSONs/ws_events_member.json index 4cade56acfe..638e560af78 100644 --- a/TestTools/StreamChatTestMockServer/Fixtures/JSONs/ws_events_member.json +++ b/TestTools/StreamChatTestMockServer/Fixtures/JSONs/ws_events_member.json @@ -1,7 +1,7 @@ { "type": "member.added", - "cid": "messaging:cf770a2e-d32f-4be2-88f1-33ce7a478de1", - "channel_id": "cf770a2e-d32f-4be2-88f1-33ce7a478de1", + "cid": "messaging:277d1327-0afd-4d76-87e8-fac1b3231ba7", + "channel_id": "277d1327-0afd-4d76-87e8-fac1b3231ba7", "channel_type": "messaging", "member": { "user_id": "leia_organa", @@ -10,13 +10,11 @@ "role": "admin", "created_at": "2024-04-04T09:42:00.68335Z", "updated_at": "2025-02-20T11:14:21.287666Z", - "last_active": "2025-02-28T21:20:23.174867Z", - "last_engaged_at": "2025-02-28T21:20:23.79467Z", + "last_active": "2025-03-14T13:17:25.910928Z", + "last_engaged_at": "2025-03-14T04:10:13.086949Z", "banned": false, "online": false, "language": "ru", - "name": "Leia Organa", - "image": "https://vignette.wikia.nocookie.net/starwars/images/f/fc/Leia_Organa_TLJ.png", "birthland": "Polis Massa", "private_settings": { "readReceipts": { @@ -25,11 +23,13 @@ "typingIndicators": { "enabled": false } - } + }, + "name": "Leia Organa", + "image": "https://vignette.wikia.nocookie.net/starwars/images/f/fc/Leia_Organa_TLJ.png" }, "status": "member", - "created_at": "2025-03-01T00:16:46.375847Z", - "updated_at": "2025-03-01T00:16:46.375847Z", + "created_at": "2025-03-15T00:15:57.890803Z", + "updated_at": "2025-03-15T00:15:57.890803Z", "banned": false, "shadow_banned": false, "is_global_banned": false, @@ -44,12 +44,11 @@ "role": "admin", "created_at": "2024-04-04T09:42:00.68335Z", "updated_at": "2025-02-20T11:14:21.287666Z", - "last_active": "2025-02-28T21:20:23.174867Z", - "last_engaged_at": "2025-02-28T21:20:23.79467Z", + "last_active": "2025-03-14T13:17:25.910928Z", + "last_engaged_at": "2025-03-14T04:10:13.086949Z", "banned": false, "online": false, "language": "ru", - "image": "https://vignette.wikia.nocookie.net/starwars/images/f/fc/Leia_Organa_TLJ.png", "birthland": "Polis Massa", "private_settings": { "readReceipts": { @@ -59,8 +58,9 @@ "enabled": false } }, - "name": "Leia Organa" + "name": "Leia Organa", + "image": "https://vignette.wikia.nocookie.net/starwars/images/f/fc/Leia_Organa_TLJ.png" }, - "channel_last_message_at": "2025-03-01T00:16:45.057386Z", - "created_at": "2025-03-01T00:16:46.383824952Z" + "channel_last_message_at": "2025-03-15T00:15:56.802706Z", + "created_at": "2025-03-15T00:15:57.898833665Z" } \ No newline at end of file diff --git a/TestTools/StreamChatTestMockServer/Fixtures/JSONs/ws_health_check.json b/TestTools/StreamChatTestMockServer/Fixtures/JSONs/ws_health_check.json index 7c03c51a103..0e24bc0f6f8 100644 --- a/TestTools/StreamChatTestMockServer/Fixtures/JSONs/ws_health_check.json +++ b/TestTools/StreamChatTestMockServer/Fixtures/JSONs/ws_health_check.json @@ -1,5 +1,5 @@ { - "connection_id": "67c091b1-0a15-3bf6-0200-00000000034f", + "connection_id": "67d2d057-0a15-3975-0200-000000000552", "me": { "id": "luke_skywalker", "name": "Luke Skywalker", @@ -10,10 +10,10 @@ ], "created_at": "2024-04-04T09:26:11.805899Z", - "updated_at": "2025-02-28T04:46:37.3153Z", + "updated_at": "2025-03-04T17:42:53.930104Z", "banned": false, "online": true, - "last_active": "2025-03-01T00:16:41.464293451Z", + "last_active": "2025-03-15T00:15:52.376423417Z", "privacy_settings": { "typing_indicators": { "enabled": true @@ -36,12 +36,12 @@ "total_unread_count": 0, "unread_channels": 0, "unread_threads": 0, - "pando": "{\"speciality\":\"ios engineer\"}", "birthland": "Tatooine", "team": "test", - "type": "team" + "type": "team", + "pando": "{\"speciality\":\"ios engineer\"}" }, "cid": "*", "type": "health.check", - "created_at": "2025-03-01T00:16:41.498659028Z" + "created_at": "2025-03-15T00:15:52.39176372Z" } \ No newline at end of file diff --git a/TestTools/StreamChatTestMockServer/Fixtures/JSONs/ws_message.json b/TestTools/StreamChatTestMockServer/Fixtures/JSONs/ws_message.json index 0451dc1837c..815937f8e38 100644 --- a/TestTools/StreamChatTestMockServer/Fixtures/JSONs/ws_message.json +++ b/TestTools/StreamChatTestMockServer/Fixtures/JSONs/ws_message.json @@ -1,17 +1,17 @@ { "type": "message.new", - "created_at": "2025-03-01T00:16:45.084671198Z", - "cid": "messaging:cf770a2e-d32f-4be2-88f1-33ce7a478de1", - "channel_last_message_at": "2025-03-01T00:16:45.057386Z", + "created_at": "2025-03-15T00:15:56.833267761Z", + "cid": "messaging:277d1327-0afd-4d76-87e8-fac1b3231ba7", + "channel_last_message_at": "2025-03-15T00:15:56.802706Z", "channel_member_count": 3, "channel_custom": { "name": "Sync Mock Server" }, "channel_type": "messaging", - "channel_id": "cf770a2e-d32f-4be2-88f1-33ce7a478de1", - "message_id": "79ad55ee-d9d4-46ba-af0e-876efb71c083", + "channel_id": "277d1327-0afd-4d76-87e8-fac1b3231ba7", + "message_id": "264dfdcf-4cbf-4ba4-afd4-eb622e7b7a36", "message": { - "id": "79ad55ee-d9d4-46ba-af0e-876efb71c083", + "id": "264dfdcf-4cbf-4ba4-afd4-eb622e7b7a36", "text": "Test", "html": "

Test

\n", "type": "regular", @@ -25,10 +25,10 @@ ], "created_at": "2024-04-04T09:26:11.805899Z", - "updated_at": "2025-02-28T04:46:37.3153Z", + "updated_at": "2025-03-04T17:42:53.930104Z", "banned": false, "online": true, - "last_active": "2025-03-01T00:16:41.464293451Z", + "last_active": "2025-03-15T00:15:52.376423417Z", "blocked_user_ids": [ ], @@ -37,184 +37,184 @@ { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "80d83a56613f579bf887ed233f28dc2f8621cf45fd026d0ef81e0d2cae520bfcc6fc4701d9c900e12111729b869fa3a9ee57b1f0304708f262bebc77095aa18d745d6e83c168dfdf747faeb9cc15226d", - "created_at": "2025-02-28T14:48:03.362107Z", + "id": "970992ef7218e0f764d5b7c2db4101656139af2bfe04e381ac2b8260bc59203e", + "created_at": "2025-03-14T20:15:24.027442Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "80a30a9870ebbf3ac821a6d05307ff1c07ad4244df0221aa982b3da4d323c90bc089f88bcf1b0e5eb267464c9dfbc2f7e4d3b23e65f0a5fc1f2a614f9ecef2ed3680a74b5b5f2ebf715fd201ef209a4f", - "created_at": "2025-02-28T13:28:33.09545Z", + "id": "80fcd0790fdf87a1d7dbff85e9d63996d5a1f6c19ea9ce323ab08935f313de88b03a1ede97d9297254d34b5a7e296d4f6869dc460c887a4a02f9322c6813733a067c20e5a03e1cefb09352b09e6456e9", + "created_at": "2025-03-14T09:10:44.513823Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "808e1f56528bc828494129cc6a00db8305925b4e62ce0080445edd44df855ed88f2bd1ab047c02e05f5fcc01aa4c48bfd16fe5a5b7007d8d883f352a21f4735db0b413116f7ed56ce03e9bcb1c183ec7", - "created_at": "2025-02-28T13:16:34.450115Z", + "id": "7e88aa732165ab5c0504b11b7c965c8b4bbfe4bb8b48c640fc3dc7ef3a9a4723", + "created_at": "2025-03-14T07:36:53.795178Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "809065933d06e42d27179dfe7f24ef7c34e74c0898c184cc1de0abd791f0f9d2a1342ad140129c3a26ba7a4f86b3534358475d9964024ff373bc2c705bc2d999cbbe0402af60077fb7af6c1f73295bd7", - "created_at": "2025-02-27T15:44:06.136153Z", + "id": "80ecacba23dc64a727442d627e9bd6f444f9e412f135c3d6d138a24d479dfca4fd108e72eee79c45b22fbf890a29f59b407c333461e358d4b1cbfc4c79456c59a4bbfc27ab829fedc56f94456316d053", + "created_at": "2025-03-13T21:44:08.488516Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "34057215a44109103833fffd0233abd2f00178ada4a88c7134bd5216392a44a5", - "created_at": "2025-02-27T10:27:00.77165Z", + "id": "80145fcb19b30e2a1b6c8a988fce57cd295acb8194a7c59b438e54c4d6309a762f1c6626f2f49bce02161c8da32b7ec3d3507857f69ca1c04a30499494400b11f166710c865b7cdc2d9cd5fd2613efbe", + "created_at": "2025-03-13T12:30:05.817314Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "8073fd3d547fdbb7e82fe9dceb476016339ca5ffc9ffa6c921178ba8212a5cbb2755639217a43fcfc78c32af4cf6fbda8de895aca2db7877548528b9b3823520198ee77066f268e5518bd47034e4510a", - "created_at": "2025-02-26T07:42:12.632215Z", + "id": "8068d511901e2a868de612b11b5d67cdbca298a4362beff50cf7ff8a17e559af852f86d6df80061ce9eb9d1d1495fd0859607b8935f1b9e13bcef4c4934f2b1e8187392c11507057432c5742c5ab94d7", + "created_at": "2025-03-13T10:52:34.639454Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "806e4e741a0f3bbf5537b4e721254c9c779f7fe60072784adaf9388a5ec242efb3fa3bf92d1a156e523bf22406f157411626f5bdeed7a9a38778a993f2ebc27fd357f80fa55b6db5ccf8950189ad73c1", - "created_at": "2025-02-25T21:19:43.832593Z", + "id": "80415a8ca8f251ab6e9529270d5f2ac837a9f16f9f80ad52230d0c16bbc9491e8226b22c3035501fccb083cad8cb629403e2a204f66719878dfc947970add889c0ca92c161058106a0b9c25bebbaeab4", + "created_at": "2025-03-11T22:07:17.920547Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "018dcb3e3abb7f114ff48c8578b22deda08f59b552b8b2223345f3a324ae33a1", - "created_at": "2025-02-24T19:01:55.143254Z", + "id": "d97580a08acbd6dcae5c9f933a1e6fda90c8731774d4b59a3009d763137960d5", + "created_at": "2025-03-11T08:05:12.083551Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "80d8da89823d58917a0aa8e3960a8a58c4916ef019349a1329e328122dd0933581787e7db1b8de83188150d30ebf3bcc87773d152d7756ba0473ddfbcc912137e63b3edfe135768ba0cbe0a45e7fec9a", - "created_at": "2025-02-21T16:31:52.93218Z", + "id": "800ea64bdf895e7233e38e27f538476aae4280e56bc5c2c0277ddc477495632d54f987dc006d70eeebaf474db586e17fbdcc0f1dd25996a0aa0f8110bce78d8ee5e02faff15b4b07832422ca3d89f0c4", + "created_at": "2025-03-10T04:46:42.213717Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "78672cd7b3eaaa8dd0bfea4f7437565e1144a2473c1f8f4be8abe18078f30083", - "created_at": "2025-02-20T11:53:41.838222Z", + "id": "80a9f3afb592e51055344bc158d91ad74ddabf0adf44ad9f60fe3847fe790d7151c9d4001d37f7f0ed8c4aaebf86a5a475f67e70222c4da8e96cf2eaea2a00b7fd502bdf8d52eb3b9753f0be6efb38f5", + "created_at": "2025-03-07T06:27:13.076238Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "80908716fdcadf1ef9b49b0c4cdacf324152c4780c4934719dbbc60fb136c4d75a0e5f71acd43c2ed55b394a727cffc9a226fef342b470ee4d738b5798b777f29b104c7e4cd5e8fd56f1b69cf2d33c03", - "created_at": "2025-02-17T13:18:44.245138Z", + "id": "8024a6916f047a2e07ae92321491c2fdbebf6b39175da172561a12e0c5ec48a1129586f98e43ad9f12c7205367b3c37290cec7d51497b63789c8d9462a37433eefa776422627666cde71fa85f8616a56", + "created_at": "2025-03-06T06:04:30.710001Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "80a09056e398cab73a0e1473d8f43d9cc2555deb42e64b13efa9ff7f3fce458b21638d51e49432ccea4375010f930216e9fc55d3925400b78e72dcfd11e8fc8a2ac1b05452c438739a91177abbe31fdb", - "created_at": "2025-02-16T09:25:53.105629Z", + "id": "809065933d06e42d27179dfe7f24ef7c34e74c0898c184cc1de0abd791f0f9d2a1342ad140129c3a26ba7a4f86b3534358475d9964024ff373bc2c705bc2d999cbbe0402af60077fb7af6c1f73295bd7", + "created_at": "2025-02-27T15:44:06.136153Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "e2c6bed363247a93ea49699385e50de99efba5707808cbd7b2d3f4e46a7cbfb9", - "created_at": "2025-02-13T17:54:30.965611Z", + "id": "34057215a44109103833fffd0233abd2f00178ada4a88c7134bd5216392a44a5", + "created_at": "2025-02-27T10:27:00.77165Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "8078596852ae3ecc7bb8d20eb1bde24d596115270e266be1e7164009c28c841c89120222e5594b8929bafb7b55ec47e5b1db2e1274b6e0c9a8f24ba1087832d4dc8acefc857be26848f2b074fdaa42fe", - "created_at": "2025-02-12T13:52:59.060649Z", + "id": "8073fd3d547fdbb7e82fe9dceb476016339ca5ffc9ffa6c921178ba8212a5cbb2755639217a43fcfc78c32af4cf6fbda8de895aca2db7877548528b9b3823520198ee77066f268e5518bd47034e4510a", + "created_at": "2025-02-26T07:42:12.632215Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "805fbd71d240360c14b785cd89f59846acf40e15514e3cf89efdbc30f360999873c4713b6fd6f192072c075c41243b82f8b89ea4880f7694f72815934477e7cf8d80c303d7bb25c8c0730e6268a1e3d2", - "created_at": "2025-02-12T10:55:34.960205Z", + "id": "806e4e741a0f3bbf5537b4e721254c9c779f7fe60072784adaf9388a5ec242efb3fa3bf92d1a156e523bf22406f157411626f5bdeed7a9a38778a993f2ebc27fd357f80fa55b6db5ccf8950189ad73c1", + "created_at": "2025-02-25T21:19:43.832593Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "2716b6f605e691bf7dc7d88d1a45968dd6807ed91dbbf793777d152f796994b0", - "created_at": "2025-02-11T01:03:34.75674Z", + "id": "018dcb3e3abb7f114ff48c8578b22deda08f59b552b8b2223345f3a324ae33a1", + "created_at": "2025-02-24T19:01:55.143254Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "809975048776300710e9bf304eabc27813c3042266dc085420362ea254ebeccea39666720bc25ffc5a022b79062f1e5f1f1de6d1565850cc78ba3c9df1a810e7d4128b73c2f76210189febf4ee0df9b1", - "created_at": "2025-02-10T01:52:00.239203Z", + "id": "80d8da89823d58917a0aa8e3960a8a58c4916ef019349a1329e328122dd0933581787e7db1b8de83188150d30ebf3bcc87773d152d7756ba0473ddfbcc912137e63b3edfe135768ba0cbe0a45e7fec9a", + "created_at": "2025-02-21T16:31:52.93218Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "8082e4f123b0f83543d1f7c04920c76ec7d4b4db9d8f2e8ff0cc4daeef338209be72df2b35257cfdb86623c14d241cf1d1f42b78fef01e16052d13b03f75ed135360886f1900d3a0e80e97b268514c77", - "created_at": "2025-02-09T10:04:50.694565Z", + "id": "78672cd7b3eaaa8dd0bfea4f7437565e1144a2473c1f8f4be8abe18078f30083", + "created_at": "2025-02-20T11:53:41.838222Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "809a57e2ed4470cb0b372e79d31cff19276879f5b312b3b71e51fc05ad338bbda27220c4f36c1283e0340d6b8816702d123dda05604dfc0d9a2eae03099f718db1f14f13de887394280380cbcb945223", - "created_at": "2025-02-08T13:42:01.054257Z", + "id": "80908716fdcadf1ef9b49b0c4cdacf324152c4780c4934719dbbc60fb136c4d75a0e5f71acd43c2ed55b394a727cffc9a226fef342b470ee4d738b5798b777f29b104c7e4cd5e8fd56f1b69cf2d33c03", + "created_at": "2025-02-17T13:18:44.245138Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "800dd2e8d35942e0a2124b71e87dcb54467f63b148190dbd04821e71100924fdcf58d8cc17eb1030529f07bfaae1bc5c2f9313139067e7392edf1fdadf837762409698640194be2ca788aa9b5660ff4d", - "created_at": "2025-02-07T09:29:01.123928Z", + "id": "80a09056e398cab73a0e1473d8f43d9cc2555deb42e64b13efa9ff7f3fce458b21638d51e49432ccea4375010f930216e9fc55d3925400b78e72dcfd11e8fc8a2ac1b05452c438739a91177abbe31fdb", + "created_at": "2025-02-16T09:25:53.105629Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "8009a9c2db8394cdaa8ebd8f0f5731ba1fe28c3cc89397b8e38b0d55b018cafead52512e0d9dfbd10ca9abaacbfa1e96586f1e2c6a4f831977607fa415188249f6d88b7369e476554f0ce8a23e033f49", - "created_at": "2025-02-06T07:45:34.135591Z", + "id": "e2c6bed363247a93ea49699385e50de99efba5707808cbd7b2d3f4e46a7cbfb9", + "created_at": "2025-02-13T17:54:30.965611Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "adcc46baccb0cc4b2dfd893f7762b6ee15b0f9d9e39c014286a501dcce558ec3", - "created_at": "2025-01-29T12:48:17.917988Z", + "id": "8078596852ae3ecc7bb8d20eb1bde24d596115270e266be1e7164009c28c841c89120222e5594b8929bafb7b55ec47e5b1db2e1274b6e0c9a8f24ba1087832d4dc8acefc857be26848f2b074fdaa42fe", + "created_at": "2025-02-12T13:52:59.060649Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "27dc3cd279808ba179d46e04a2e95bc17a94062dfc91e1a317d7e39c314f65c6", - "created_at": "2025-01-27T09:26:50.733298Z", + "id": "805fbd71d240360c14b785cd89f59846acf40e15514e3cf89efdbc30f360999873c4713b6fd6f192072c075c41243b82f8b89ea4880f7694f72815934477e7cf8d80c303d7bb25c8c0730e6268a1e3d2", + "created_at": "2025-02-12T10:55:34.960205Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "806dcda419b98288b170fcaee122e709197f8ae3c727329f1ea3ec2aed31419acd1028da485a462e39850aec933df018da4fb2d75f02f4a003f7749084d6b4a37818caffc674c41f947592f648155a93", - "created_at": "2025-01-27T07:18:18.62698Z", + "id": "2716b6f605e691bf7dc7d88d1a45968dd6807ed91dbbf793777d152f796994b0", + "created_at": "2025-02-11T01:03:34.75674Z", "user_id": "luke_skywalker" }, { "push_provider": "apn", "push_provider_name": "APN-Configuration", - "id": "80ca028a4646d58ef07166eaed2c5f068430fb9d7aa6b2bb94d53f8ce6261df2f932611aea12cad01a7b2cbc5169a4a0242c8d95c78ed5cde48bc139414ec63bbf696a56fb7c9b07218fa17bf8ba0aec", - "created_at": "2025-01-26T19:17:41.00587Z", + "id": "809975048776300710e9bf304eabc27813c3042266dc085420362ea254ebeccea39666720bc25ffc5a022b79062f1e5f1f1de6d1565850cc78ba3c9df1a810e7d4128b73c2f76210189febf4ee0df9b1", + "created_at": "2025-02-10T01:52:00.239203Z", "user_id": "luke_skywalker" } ], "invisible": false, + "birthland": "Tatooine", "team": "test", "type": "team", - "pando": "{\"speciality\":\"ios engineer\"}", - "birthland": "Tatooine" + "pando": "{\"speciality\":\"ios engineer\"}" }, "attachments": [ @@ -231,9 +231,9 @@ }, "reply_count": 0, "deleted_reply_count": 0, - "cid": "messaging:cf770a2e-d32f-4be2-88f1-33ce7a478de1", - "created_at": "2025-03-01T00:16:45.057386Z", - "updated_at": "2025-03-01T00:16:45.057386Z", + "cid": "messaging:277d1327-0afd-4d76-87e8-fac1b3231ba7", + "created_at": "2025-03-15T00:15:56.802706Z", + "updated_at": "2025-03-15T00:15:56.802706Z", "shadowed": false, "mentioned_users": [ @@ -257,10 +257,10 @@ ], "created_at": "2024-04-04T09:26:11.805899Z", - "updated_at": "2025-02-28T04:46:37.3153Z", + "updated_at": "2025-03-04T17:42:53.930104Z", "banned": false, "online": true, - "last_active": "2025-03-01T00:16:41.464293451Z", + "last_active": "2025-03-15T00:15:52.376423417Z", "blocked_user_ids": [ ], diff --git a/TestTools/StreamChatTestMockServer/Fixtures/JSONs/ws_reaction.json b/TestTools/StreamChatTestMockServer/Fixtures/JSONs/ws_reaction.json index 13d203a0bcc..3faa0149007 100644 --- a/TestTools/StreamChatTestMockServer/Fixtures/JSONs/ws_reaction.json +++ b/TestTools/StreamChatTestMockServer/Fixtures/JSONs/ws_reaction.json @@ -1,10 +1,10 @@ { "type": "reaction.new", - "cid": "messaging:cf770a2e-d32f-4be2-88f1-33ce7a478de1", - "channel_id": "cf770a2e-d32f-4be2-88f1-33ce7a478de1", + "cid": "messaging:277d1327-0afd-4d76-87e8-fac1b3231ba7", + "channel_id": "277d1327-0afd-4d76-87e8-fac1b3231ba7", "channel_type": "messaging", "message": { - "id": "79ad55ee-d9d4-46ba-af0e-876efb71c083", + "id": "264dfdcf-4cbf-4ba4-afd4-eb622e7b7a36", "text": "Test", "html": "

Test

\n", "type": "regular", @@ -12,18 +12,18 @@ "id": "luke_skywalker", "role": "admin", "created_at": "2024-04-04T09:26:11.805899Z", - "updated_at": "2025-02-28T04:46:37.3153Z", - "last_active": "2025-03-01T00:16:41.464293451Z", - "last_engaged_at": "2025-02-28T11:39:31.712237Z", + "updated_at": "2025-03-04T17:42:53.930104Z", + "last_active": "2025-03-15T00:15:52.376423417Z", + "last_engaged_at": "2025-03-14T03:59:07.699103Z", "banned": false, "online": true, "language": "id", + "team": "test", "type": "team", "image": "https://vignette.wikia.nocookie.net/starwars/images/2/20/LukeTLJ.jpg", "pando": "{\"speciality\":\"ios engineer\"}", "birthland": "Tatooine", - "name": "Luke Skywalker", - "team": "test" + "name": "Luke Skywalker" }, "restricted_visibility": [ @@ -33,29 +33,29 @@ ], "latest_reactions": [ { - "message_id": "79ad55ee-d9d4-46ba-af0e-876efb71c083", + "message_id": "264dfdcf-4cbf-4ba4-afd4-eb622e7b7a36", "user_id": "luke_skywalker", "user": { "id": "luke_skywalker", "role": "admin", "created_at": "2024-04-04T09:26:11.805899Z", - "updated_at": "2025-02-28T04:46:37.3153Z", - "last_active": "2025-03-01T00:16:41.464293451Z", - "last_engaged_at": "2025-02-28T11:39:31.712237Z", + "updated_at": "2025-03-04T17:42:53.930104Z", + "last_active": "2025-03-15T00:15:52.376423417Z", + "last_engaged_at": "2025-03-14T03:59:07.699103Z", "banned": false, "online": true, "language": "id", + "birthland": "Tatooine", "name": "Luke Skywalker", "team": "test", "type": "team", "image": "https://vignette.wikia.nocookie.net/starwars/images/2/20/LukeTLJ.jpg", - "pando": "{\"speciality\":\"ios engineer\"}", - "birthland": "Tatooine" + "pando": "{\"speciality\":\"ios engineer\"}" }, "type": "like", "score": 1, - "created_at": "2025-03-01T00:16:45.705797Z", - "updated_at": "2025-03-01T00:16:45.705797Z" + "created_at": "2025-03-15T00:15:57.332808Z", + "updated_at": "2025-03-15T00:15:57.332808Z" } ], "own_reactions": [ @@ -71,15 +71,15 @@ "like": { "count": 1, "sum_scores": 1, - "first_reaction_at": "2025-03-01T00:16:45.705797Z", - "last_reaction_at": "2025-03-01T00:16:45.705797Z" + "first_reaction_at": "2025-03-15T00:15:57.332808Z", + "last_reaction_at": "2025-03-15T00:15:57.332808Z" } }, "reply_count": 0, "deleted_reply_count": 0, - "cid": "messaging:cf770a2e-d32f-4be2-88f1-33ce7a478de1", - "created_at": "2025-03-01T00:16:45.057386Z", - "updated_at": "2025-03-01T00:16:45.710133Z", + "cid": "messaging:277d1327-0afd-4d76-87e8-fac1b3231ba7", + "created_at": "2025-03-15T00:15:56.802706Z", + "updated_at": "2025-03-15T00:15:57.343296Z", "shadowed": false, "mentioned_users": [ @@ -91,47 +91,47 @@ "pin_expires": null }, "reaction": { - "message_id": "79ad55ee-d9d4-46ba-af0e-876efb71c083", + "message_id": "264dfdcf-4cbf-4ba4-afd4-eb622e7b7a36", "user_id": "luke_skywalker", "user": { "id": "luke_skywalker", "role": "admin", "created_at": "2024-04-04T09:26:11.805899Z", - "updated_at": "2025-02-28T04:46:37.3153Z", - "last_active": "2025-03-01T00:16:41.464293451Z", - "last_engaged_at": "2025-02-28T11:39:31.712237Z", + "updated_at": "2025-03-04T17:42:53.930104Z", + "last_active": "2025-03-15T00:15:52.376423417Z", + "last_engaged_at": "2025-03-14T03:59:07.699103Z", "banned": false, "online": true, "language": "id", + "birthland": "Tatooine", "name": "Luke Skywalker", "team": "test", "type": "team", "image": "https://vignette.wikia.nocookie.net/starwars/images/2/20/LukeTLJ.jpg", - "pando": "{\"speciality\":\"ios engineer\"}", - "birthland": "Tatooine" + "pando": "{\"speciality\":\"ios engineer\"}" }, "type": "like", "score": 1, - "created_at": "2025-03-01T00:16:45.705797Z", - "updated_at": "2025-03-01T00:16:45.705797Z" + "created_at": "2025-03-15T00:15:57.332808Z", + "updated_at": "2025-03-15T00:15:57.332808Z" }, "user": { "id": "luke_skywalker", "role": "admin", "created_at": "2024-04-04T09:26:11.805899Z", - "updated_at": "2025-02-28T04:46:37.3153Z", - "last_active": "2025-03-01T00:16:41.464293451Z", - "last_engaged_at": "2025-02-28T11:39:31.712237Z", + "updated_at": "2025-03-04T17:42:53.930104Z", + "last_active": "2025-03-15T00:15:52.376423417Z", + "last_engaged_at": "2025-03-14T03:59:07.699103Z", "banned": false, "online": true, "language": "id", + "name": "Luke Skywalker", "team": "test", "type": "team", "image": "https://vignette.wikia.nocookie.net/starwars/images/2/20/LukeTLJ.jpg", "pando": "{\"speciality\":\"ios engineer\"}", - "birthland": "Tatooine", - "name": "Luke Skywalker" + "birthland": "Tatooine" }, - "channel_last_message_at": "2025-03-01T00:16:45.057386Z", - "created_at": "2025-03-01T00:16:45.7187818Z" + "channel_last_message_at": "2025-03-15T00:15:56.802706Z", + "created_at": "2025-03-15T00:15:57.35313543Z" } \ No newline at end of file diff --git a/Tests/StreamChatTests/Database/DTOs/MessageDTO_Tests.swift b/Tests/StreamChatTests/Database/DTOs/MessageDTO_Tests.swift index 9ff21331acc..e2fe560cad1 100644 --- a/Tests/StreamChatTests/Database/DTOs/MessageDTO_Tests.swift +++ b/Tests/StreamChatTests/Database/DTOs/MessageDTO_Tests.swift @@ -4597,6 +4597,78 @@ final class MessageDTO_Tests: XCTestCase { XCTAssertEqual(draftReply.parentMessageId, parentMessageId) } + func test_saveDraftMessage_whenOneAlreadyExists_shouldNotEraseAttachments() throws { + // At the moment, attachments are not saved in to the server, so we should not delete them + // if the draft from the server does not contain attachments. + + // GIVEN + let cid: ChannelId = .unique + let currentUser: CurrentUserPayload = .dummy(userId: .unique, role: .user) + let channelDetailPayload = ChannelDetailPayload.dummy(cid: cid) + let channelPayload: ChannelPayload = .dummy(channel: channelDetailPayload) + let draftId = MessageId.unique + let draftPayload = DraftPayload( + cid: cid, + channelPayload: channelDetailPayload, + createdAt: .init(), + message: .init( + id: draftId, + text: "Draft message", + command: nil, + args: nil, + showReplyInChannel: false, + mentionedUsers: nil, + extraData: [:], + attachments: [.audio()], + isSilent: false + ), + quotedMessage: nil, + parentId: nil, + parentMessage: nil + ) + + // First save draft with attachment. + try database.writeSynchronously { session in + try session.saveCurrentUser(payload: currentUser) + try session.saveChannel(payload: channelPayload) + try session.saveDraftMessage(payload: draftPayload, for: cid, cache: nil) + } + + // Then save it without attachment. + let draftPayloadWithoutAttachment = DraftPayload( + cid: cid, + channelPayload: channelDetailPayload, + createdAt: .init(), + message: .init( + id: draftId, + text: "Draft message", + command: nil, + args: nil, + showReplyInChannel: false, + mentionedUsers: nil, + extraData: [:], + attachments: nil, + isSilent: false + ), + quotedMessage: nil, + parentId: nil, + parentMessage: nil + ) + + try database.writeSynchronously { session in + try session.saveDraftMessage(payload: draftPayloadWithoutAttachment, for: cid, cache: nil) + } + + // THEN + let channelDTO = try XCTUnwrap(database.viewContext.channel(cid: cid)) + let draftMessage = try XCTUnwrap(channelDTO.draftMessage) + XCTAssertEqual(draftMessage.text, "Draft message") + XCTAssertEqual(draftMessage.type, MessageType.regular.rawValue) + XCTAssertTrue(draftMessage.isDraft) + XCTAssertNil(draftMessage.parentMessageId) + XCTAssertEqual(draftMessage.attachments.count, 1) + } + func test_deleteDraftMessage_fromChannel() throws { // GIVEN let cid: ChannelId = .unique diff --git a/Tests/StreamChatUITests/SnapshotTests/ChatChannel/ChatChannelVC_Tests.swift b/Tests/StreamChatUITests/SnapshotTests/ChatChannel/ChatChannelVC_Tests.swift index 6ba4e1efdf4..5f6ca55d7d4 100644 --- a/Tests/StreamChatUITests/SnapshotTests/ChatChannel/ChatChannelVC_Tests.swift +++ b/Tests/StreamChatUITests/SnapshotTests/ChatChannel/ChatChannelVC_Tests.swift @@ -1615,6 +1615,41 @@ final class ChatChannelVC_Tests: XCTestCase { AssertSnapshot(vc, variants: [.defaultLight]) } + + func test_channelWithDraftMessage_whenDraftIsUpdatedFromEvent_whenThread_shouldNotUpdateChannelComposer() { + let draftMessage = DraftMessage.mock(text: "Draft Message") + + let channel = ChatChannel.mock(cid: .unique, draftMessage: draftMessage) + channelControllerMock.channel_mock = channel + + vc.view.layoutIfNeeded() + + let updatedDraftMessage = DraftMessage.mock(threadId: .unique, text: "Updated draft") + channelControllerMock.mockCid = channel.cid + let event = DraftUpdatedEvent( + cid: channel.cid, + channel: channel, + draftMessage: updatedDraftMessage, + createdAt: .unique + ) + vc.eventsController(vc.eventsController, didReceiveEvent: event) + + AssertSnapshot(vc, variants: [.defaultLight]) + } + + func test_channelWithDraftMessage_whenDraftIsDeletedFromEvent_updatesDraftInComposer() { + let channel = ChatChannel.mock(cid: .unique, draftMessage: nil) + channelControllerMock.channel_mock = channel + + vc.messageComposerVC.content.draftMessage(.mock(text: "Draft Message")) + XCTAssertFalse(vc.messageComposerVC.content.text.isEmpty) + + channelControllerMock.mockCid = channel.cid + let event = DraftDeletedEvent(cid: channel.cid, threadId: nil, createdAt: .unique) + vc.eventsController(vc.eventsController, didReceiveEvent: event) + + XCTAssertTrue(vc.messageComposerVC.content.text.isEmpty) + } } private extension ChatChannelVC_Tests { diff --git a/Tests/StreamChatUITests/SnapshotTests/ChatChannel/__Snapshots__/ChatChannelVC_Tests/test_channelWithDraftMessage_whenDraftIsUpdatedFromEvent_whenThread_shouldNotUpdateChannelComposer.default-light.png b/Tests/StreamChatUITests/SnapshotTests/ChatChannel/__Snapshots__/ChatChannelVC_Tests/test_channelWithDraftMessage_whenDraftIsUpdatedFromEvent_whenThread_shouldNotUpdateChannelComposer.default-light.png new file mode 100644 index 00000000000..7bbf423886d Binary files /dev/null and b/Tests/StreamChatUITests/SnapshotTests/ChatChannel/__Snapshots__/ChatChannelVC_Tests/test_channelWithDraftMessage_whenDraftIsUpdatedFromEvent_whenThread_shouldNotUpdateChannelComposer.default-light.png differ diff --git a/Tests/StreamChatUITests/SnapshotTests/ChatChannelList/ChatChannelListItemView_Tests.swift b/Tests/StreamChatUITests/SnapshotTests/ChatChannelList/ChatChannelListItemView_Tests.swift index 623bf6c9ee0..a266234a4dd 100644 --- a/Tests/StreamChatUITests/SnapshotTests/ChatChannelList/ChatChannelListItemView_Tests.swift +++ b/Tests/StreamChatUITests/SnapshotTests/ChatChannelList/ChatChannelListItemView_Tests.swift @@ -910,6 +910,7 @@ final class ChatChannelListItemView_Tests: XCTestCase { var appearance = Appearance() appearance.fonts.bodyBold = .italicSystemFont(ofSize: 20) appearance.colorPalette.subtitleText = .cyan + appearance.colorPalette.text = .red let view = channelItemView( content: .init( diff --git a/Tests/StreamChatUITests/SnapshotTests/ChatChannelList/__Snapshots__/ChatChannelListItemView_Tests/test_appearanceCustomization_usingAppearance.default-light.png b/Tests/StreamChatUITests/SnapshotTests/ChatChannelList/__Snapshots__/ChatChannelListItemView_Tests/test_appearanceCustomization_usingAppearance.default-light.png index 404efbb9cd9..99b6b1f2104 100644 Binary files a/Tests/StreamChatUITests/SnapshotTests/ChatChannelList/__Snapshots__/ChatChannelListItemView_Tests/test_appearanceCustomization_usingAppearance.default-light.png and b/Tests/StreamChatUITests/SnapshotTests/ChatChannelList/__Snapshots__/ChatChannelListItemView_Tests/test_appearanceCustomization_usingAppearance.default-light.png differ diff --git a/Tests/StreamChatUITests/SnapshotTests/ChatChannelList/__Snapshots__/ChatChannelListItemView_Tests/test_appearanceCustomization_usingAppearance.extraExtraExtraLarge-light.png b/Tests/StreamChatUITests/SnapshotTests/ChatChannelList/__Snapshots__/ChatChannelListItemView_Tests/test_appearanceCustomization_usingAppearance.extraExtraExtraLarge-light.png index fac5855a365..4779e0d9b4b 100644 Binary files a/Tests/StreamChatUITests/SnapshotTests/ChatChannelList/__Snapshots__/ChatChannelListItemView_Tests/test_appearanceCustomization_usingAppearance.extraExtraExtraLarge-light.png and b/Tests/StreamChatUITests/SnapshotTests/ChatChannelList/__Snapshots__/ChatChannelListItemView_Tests/test_appearanceCustomization_usingAppearance.extraExtraExtraLarge-light.png differ diff --git a/Tests/StreamChatUITests/SnapshotTests/ChatChannelList/__Snapshots__/ChatChannelListItemView_Tests/test_appearanceCustomization_usingAppearance.rightToLeftLayout-default.png b/Tests/StreamChatUITests/SnapshotTests/ChatChannelList/__Snapshots__/ChatChannelListItemView_Tests/test_appearanceCustomization_usingAppearance.rightToLeftLayout-default.png index 9ee5b810593..cb56d960d98 100644 Binary files a/Tests/StreamChatUITests/SnapshotTests/ChatChannelList/__Snapshots__/ChatChannelListItemView_Tests/test_appearanceCustomization_usingAppearance.rightToLeftLayout-default.png and b/Tests/StreamChatUITests/SnapshotTests/ChatChannelList/__Snapshots__/ChatChannelListItemView_Tests/test_appearanceCustomization_usingAppearance.rightToLeftLayout-default.png differ diff --git a/Tests/StreamChatUITests/SnapshotTests/ChatChannelList/__Snapshots__/ChatChannelListItemView_Tests/test_appearanceCustomization_usingAppearance.small-dark.png b/Tests/StreamChatUITests/SnapshotTests/ChatChannelList/__Snapshots__/ChatChannelListItemView_Tests/test_appearanceCustomization_usingAppearance.small-dark.png index 901086b61c9..20f385bab41 100644 Binary files a/Tests/StreamChatUITests/SnapshotTests/ChatChannelList/__Snapshots__/ChatChannelListItemView_Tests/test_appearanceCustomization_usingAppearance.small-dark.png and b/Tests/StreamChatUITests/SnapshotTests/ChatChannelList/__Snapshots__/ChatChannelListItemView_Tests/test_appearanceCustomization_usingAppearance.small-dark.png differ diff --git a/Tests/StreamChatUITests/SnapshotTests/ChatThread/ChatThreadVC_Tests.swift b/Tests/StreamChatUITests/SnapshotTests/ChatThread/ChatThreadVC_Tests.swift index 4709faecf7c..21cca01db2d 100644 --- a/Tests/StreamChatUITests/SnapshotTests/ChatThread/ChatThreadVC_Tests.swift +++ b/Tests/StreamChatUITests/SnapshotTests/ChatThread/ChatThreadVC_Tests.swift @@ -360,6 +360,25 @@ final class ChatThreadVC_Tests: XCTestCase { AssertSnapshot(vc, variants: [.defaultLight]) } + func test_threadWithDraftReply_whenDraftIsDeletedFromEvent_removesDraftFromComposer() { + let cid = ChannelId.unique + let parentMessage = ChatMessage.mock( + id: messageControllerMock.messageId, + cid: cid, + text: "Parent message", + author: .mock(id: .unique), + draftReply: .mock(text: "Draft Message") + ) + vc.messageComposerVC.content.draftMessage(.mock(text: "Draft")) + + XCTAssertFalse(vc.messageComposerVC.content.text.isEmpty) + + let updateDraftEvent = DraftDeletedEvent(cid: cid, threadId: messageControllerMock.messageId, createdAt: .unique) + vc.eventsController(vc.eventsController, didReceiveEvent: updateDraftEvent) + + XCTAssertTrue(vc.messageComposerVC.content.text.isEmpty) + } + // MARK: - audioQueuePlayerNextAssetURL func test_audioQueuePlayerNextAssetURL_callsNextAvailableVoiceRecordingProvideWithExpectedInputAndReturnsValue() throws {