From a207f053a898898b63ea6b86a81eed0e10a29415 Mon Sep 17 00:00:00 2001 From: Naomi Plasterer Date: Sun, 2 Feb 2025 18:32:27 -0800 Subject: [PATCH 1/5] remove pinned frame url from ios --- Sources/XMTPiOS/Conversations.swift | 12 ---- Sources/XMTPiOS/Group.swift | 21 ------- .../XMTPiOS/Libxmtp/PermissionPolicySet.swift | 10 --- Tests/XMTPTests/GroupPermissionsTests.swift | 62 +------------------ XMTP.podspec | 2 +- .../xcshareddata/swiftpm/Package.resolved | 4 +- 6 files changed, 6 insertions(+), 105 deletions(-) diff --git a/Sources/XMTPiOS/Conversations.swift b/Sources/XMTPiOS/Conversations.swift index bac2eca0..e1dc25b9 100644 --- a/Sources/XMTPiOS/Conversations.swift +++ b/Sources/XMTPiOS/Conversations.swift @@ -278,7 +278,6 @@ public actor Conversations { name: String = "", imageUrlSquare: String = "", description: String = "", - pinnedFrameUrl: String = "", messageDisappearingSettings: FfiMessageDisappearingSettings? = nil, messageExpirationMs: Int64? = nil ) async throws -> Group { @@ -290,7 +289,6 @@ public actor Conversations { name: name, imageUrlSquare: imageUrlSquare, description: description, - pinnedFrameUrl: pinnedFrameUrl, permissionPolicySet: nil, messageDisappearingSettings: messageDisappearingSettings ) @@ -302,7 +300,6 @@ public actor Conversations { name: String = "", imageUrlSquare: String = "", description: String = "", - pinnedFrameUrl: String = "", messageDisappearingSettings: FfiMessageDisappearingSettings? = nil ) async throws -> Group { return try await newGroupInternal( @@ -311,7 +308,6 @@ public actor Conversations { name: name, imageUrlSquare: imageUrlSquare, description: description, - pinnedFrameUrl: pinnedFrameUrl, permissionPolicySet: PermissionPolicySet.toFfiPermissionPolicySet( permissionPolicySet), messageDisappearingSettings: messageDisappearingSettings @@ -324,7 +320,6 @@ public actor Conversations { name: String = "", imageUrlSquare: String = "", description: String = "", - pinnedFrameUrl: String = "", permissionPolicySet: FfiPermissionPolicySet? = nil, messageDisappearingSettings: FfiMessageDisappearingSettings? = nil ) async throws -> Group { @@ -350,7 +345,6 @@ public actor Conversations { groupName: name, groupImageUrlSquare: imageUrlSquare, groupDescription: description, - groupPinnedFrameUrl: pinnedFrameUrl, customPermissionPolicySet: permissionPolicySet, messageDisappearingSettings: messageDisappearingSettings ) @@ -364,7 +358,6 @@ public actor Conversations { name: String = "", imageUrlSquare: String = "", description: String = "", - pinnedFrameUrl: String = "", messageDisappearingSettings: FfiMessageDisappearingSettings? = nil ) async throws -> Group { return try await newGroupInternalWithInboxIds( @@ -375,7 +368,6 @@ public actor Conversations { name: name, imageUrlSquare: imageUrlSquare, description: description, - pinnedFrameUrl: pinnedFrameUrl, permissionPolicySet: nil, messageDisappearingSettings: messageDisappearingSettings ) @@ -387,7 +379,6 @@ public actor Conversations { name: String = "", imageUrlSquare: String = "", description: String = "", - pinnedFrameUrl: String = "", messageDisappearingSettings: FfiMessageDisappearingSettings? = nil ) async throws -> Group { return try await newGroupInternalWithInboxIds( @@ -396,7 +387,6 @@ public actor Conversations { name: name, imageUrlSquare: imageUrlSquare, description: description, - pinnedFrameUrl: pinnedFrameUrl, permissionPolicySet: PermissionPolicySet.toFfiPermissionPolicySet( permissionPolicySet), messageDisappearingSettings: messageDisappearingSettings @@ -409,7 +399,6 @@ public actor Conversations { name: String = "", imageUrlSquare: String = "", description: String = "", - pinnedFrameUrl: String = "", permissionPolicySet: FfiPermissionPolicySet? = nil, messageDisappearingSettings: FfiMessageDisappearingSettings? = nil ) async throws -> Group { @@ -425,7 +414,6 @@ public actor Conversations { groupName: name, groupImageUrlSquare: imageUrlSquare, groupDescription: description, - groupPinnedFrameUrl: pinnedFrameUrl, customPermissionPolicySet: permissionPolicySet, messageDisappearingSettings: messageDisappearingSettings ) diff --git a/Sources/XMTPiOS/Group.swift b/Sources/XMTPiOS/Group.swift index d4d863c6..8ddf2047 100644 --- a/Sources/XMTPiOS/Group.swift +++ b/Sources/XMTPiOS/Group.swift @@ -158,10 +158,6 @@ public struct Group: Identifiable, Equatable, Hashable { return try ffiGroup.groupDescription() } - public func groupPinnedFrameUrl() throws -> String { - return try ffiGroup.groupPinnedFrameUrl() - } - public func updateGroupName(groupName: String) async throws { try await ffiGroup.updateGroupName(groupName: groupName) } @@ -176,13 +172,6 @@ public struct Group: Identifiable, Equatable, Hashable { groupDescription: groupDescription) } - public func updateGroupPinnedFrameUrl(groupPinnedFrameUrl: String) - async throws - { - try await ffiGroup.updateGroupPinnedFrameUrl( - pinnedFrameUrl: groupPinnedFrameUrl) - } - public func updateAddMemberPermission(newPermissionOption: PermissionOption) async throws { @@ -249,16 +238,6 @@ public struct Group: Identifiable, Equatable, Hashable { metadataField: FfiMetadataField.imageUrlSquare) } - public func updateGroupPinnedFrameUrlPermission( - newPermissionOption: PermissionOption - ) async throws { - try await ffiGroup.updatePermissionPolicy( - permissionUpdateType: FfiPermissionUpdateType.updateMetadata, - permissionPolicyOption: PermissionOption.toFfiPermissionPolicy( - option: newPermissionOption), - metadataField: FfiMetadataField.pinnedFrameUrl) - } - public func updateConsentState(state: ConsentState) async throws { try ffiGroup.updateConsentState(state: state.toFFI) } diff --git a/Sources/XMTPiOS/Libxmtp/PermissionPolicySet.swift b/Sources/XMTPiOS/Libxmtp/PermissionPolicySet.swift index e480b636..658beaf8 100644 --- a/Sources/XMTPiOS/Libxmtp/PermissionPolicySet.swift +++ b/Sources/XMTPiOS/Libxmtp/PermissionPolicySet.swift @@ -67,7 +67,6 @@ public class PermissionPolicySet { public var updateGroupNamePolicy: PermissionOption public var updateGroupDescriptionPolicy: PermissionOption public var updateGroupImagePolicy: PermissionOption - public var updateGroupPinnedFrameUrlPolicy: PermissionOption public var updateMessageDisappearingPolicy: PermissionOption public init( @@ -76,7 +75,6 @@ public class PermissionPolicySet { updateGroupNamePolicy: PermissionOption, updateGroupDescriptionPolicy: PermissionOption, updateGroupImagePolicy: PermissionOption, - updateGroupPinnedFrameUrlPolicy: PermissionOption, updateMessageDisappearingPolicy: PermissionOption ) { self.addMemberPolicy = addMemberPolicy @@ -86,7 +84,6 @@ public class PermissionPolicySet { self.updateGroupNamePolicy = updateGroupNamePolicy self.updateGroupDescriptionPolicy = updateGroupDescriptionPolicy self.updateGroupImagePolicy = updateGroupImagePolicy - self.updateGroupPinnedFrameUrlPolicy = updateGroupPinnedFrameUrlPolicy self.updateMessageDisappearingPolicy = updateMessageDisappearingPolicy } @@ -110,9 +107,6 @@ public class PermissionPolicySet { updateGroupImageUrlSquarePolicy: PermissionOption.toFfiPermissionPolicy( option: permissionPolicySet.updateGroupImagePolicy), - updateGroupPinnedFrameUrlPolicy: - PermissionOption.toFfiPermissionPolicy( - option: permissionPolicySet.updateGroupPinnedFrameUrlPolicy), updateMessageDisappearingPolicy: PermissionOption.toFfiPermissionPolicy( option: permissionPolicySet.updateMessageDisappearingPolicy) @@ -141,10 +135,6 @@ public class PermissionPolicySet { updateGroupImagePolicy: PermissionOption.fromFfiPermissionPolicy( ffiPolicy: ffiPermissionPolicySet .updateGroupImageUrlSquarePolicy), - updateGroupPinnedFrameUrlPolicy: - PermissionOption.fromFfiPermissionPolicy( - ffiPolicy: ffiPermissionPolicySet - .updateGroupPinnedFrameUrlPolicy), updateMessageDisappearingPolicy: PermissionOption.fromFfiPermissionPolicy( ffiPolicy: ffiPermissionPolicySet diff --git a/Tests/XMTPTests/GroupPermissionsTests.swift b/Tests/XMTPTests/GroupPermissionsTests.swift index c981436e..f900837a 100644 --- a/Tests/XMTPTests/GroupPermissionsTests.swift +++ b/Tests/XMTPTests/GroupPermissionsTests.swift @@ -305,50 +305,6 @@ class GroupPermissionTests: XCTestCase { try alixGroup.groupDescription(), "alix group description") } - func testCanUpdatePinnedFrameUrl() async throws { - let fixtures = try await fixtures() - let boGroup = try await fixtures.boClient.conversations.newGroup( - with: [fixtures.alix.address, fixtures.caro.address], - permissions: .adminOnly, - pinnedFrameUrl: "initial url" - ) - try await fixtures.alixClient.conversations.sync() - let alixGroup = try await fixtures.alixClient.conversations - .listGroups().first! - - // Verify that alix cannot update group pinned frame url - XCTAssertEqual(try boGroup.groupPinnedFrameUrl(), "initial url") - await assertThrowsAsyncError( - try await alixGroup.updateGroupPinnedFrameUrl( - groupPinnedFrameUrl: "https://foo/bar.com") - ) - - try await alixGroup.sync() - try await boGroup.sync() - XCTAssertEqual( - try boGroup.permissionPolicySet().updateGroupPinnedFrameUrlPolicy, - .admin) - - // Update group pinned frame url permissions so alix can update - try await boGroup.updateGroupPinnedFrameUrlPermission( - newPermissionOption: .allow) - try await boGroup.sync() - try await alixGroup.sync() - XCTAssertEqual( - try boGroup.permissionPolicySet().updateGroupPinnedFrameUrlPolicy, - .allow) - - // Verify that alix can now update group pinned frame url - try await alixGroup.updateGroupPinnedFrameUrl( - groupPinnedFrameUrl: "https://foo/barz.com") - try await alixGroup.sync() - try await boGroup.sync() - XCTAssertEqual( - try boGroup.groupPinnedFrameUrl(), "https://foo/barz.com") - XCTAssertEqual( - try alixGroup.groupPinnedFrameUrl(), "https://foo/barz.com") - } - func testCanCreateGroupWithCustomPermissions() async throws { let fixtures = try await fixtures() let permissionPolicySet = PermissionPolicySet( @@ -359,14 +315,12 @@ class GroupPermissionTests: XCTestCase { updateGroupNamePolicy: PermissionOption.admin, updateGroupDescriptionPolicy: PermissionOption.allow, updateGroupImagePolicy: PermissionOption.admin, - updateGroupPinnedFrameUrlPolicy: PermissionOption.deny, updateMessageDisappearingPolicy: PermissionOption.allow ) _ = try await fixtures.boClient.conversations .newGroupCustomPermissions( with: [fixtures.alix.address, fixtures.caro.address], - permissionPolicySet: permissionPolicySet, - pinnedFrameUrl: "initial url" + permissionPolicySet: permissionPolicySet ) try await fixtures.alixClient.conversations.sync() @@ -387,9 +341,6 @@ class GroupPermissionTests: XCTestCase { == PermissionOption.allow) XCTAssert( alixPermissionSet.updateGroupImagePolicy == PermissionOption.admin) - XCTAssert( - alixPermissionSet.updateGroupPinnedFrameUrlPolicy - == PermissionOption.deny) } func testCanCreateGroupWithInboxIdCustomPermissions() async throws { @@ -402,14 +353,12 @@ class GroupPermissionTests: XCTestCase { updateGroupNamePolicy: PermissionOption.admin, updateGroupDescriptionPolicy: PermissionOption.allow, updateGroupImagePolicy: PermissionOption.admin, - updateGroupPinnedFrameUrlPolicy: PermissionOption.deny, updateMessageDisappearingPolicy: PermissionOption.allow ) _ = try await fixtures.boClient.conversations .newGroupCustomPermissionsWithInboxIds( with: [fixtures.alixClient.inboxID, fixtures.caroClient.inboxID], - permissionPolicySet: permissionPolicySet, - pinnedFrameUrl: "initial url" + permissionPolicySet: permissionPolicySet ) try await fixtures.alixClient.conversations.sync() @@ -430,9 +379,6 @@ class GroupPermissionTests: XCTestCase { == PermissionOption.allow) XCTAssert( alixPermissionSet.updateGroupImagePolicy == PermissionOption.admin) - XCTAssert( - alixPermissionSet.updateGroupPinnedFrameUrlPolicy - == PermissionOption.deny) } func testCreateGroupWithInvalidPermissionsFails() async throws { @@ -446,15 +392,13 @@ class GroupPermissionTests: XCTestCase { updateGroupNamePolicy: PermissionOption.admin, updateGroupDescriptionPolicy: PermissionOption.allow, updateGroupImagePolicy: PermissionOption.admin, - updateGroupPinnedFrameUrlPolicy: PermissionOption.deny, updateMessageDisappearingPolicy: PermissionOption.allow ) await assertThrowsAsyncError( try await fixtures.boClient.conversations .newGroupCustomPermissions( with: [fixtures.alix.address, fixtures.caro.address], - permissionPolicySet: permissionPolicySetInvalid, - pinnedFrameUrl: "initial url" + permissionPolicySet: permissionPolicySetInvalid ) ) } diff --git a/XMTP.podspec b/XMTP.podspec index ce5181d3..949a77e1 100644 --- a/XMTP.podspec +++ b/XMTP.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |spec| spec.name = "XMTP" - spec.version = "3.0.26" + spec.version = "3.0.27" spec.summary = "XMTP SDK Cocoapod" diff --git a/XMTPiOSExample/XMTPiOSExample.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved b/XMTPiOSExample/XMTPiOSExample.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved index 2fa3320e..a5f8c3c1 100644 --- a/XMTPiOSExample/XMTPiOSExample.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved +++ b/XMTPiOSExample/XMTPiOSExample.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved @@ -41,8 +41,8 @@ "kind" : "remoteSourceControl", "location" : "https://github.com/xmtp/libxmtp-swift.git", "state" : { - "revision" : "6b0166d5e9680905cee1ca141854de30e1c28317", - "version" : "3.0.20" + "revision" : "c9d3bdff9ead5d70a803d290de4eb75c9e9fc4f2", + "version" : "3.0.21" } }, { From 895af71220cc0ffd5837b3fea49cdb7dffed42de Mon Sep 17 00:00:00 2001 From: cameronvoell Date: Mon, 3 Feb 2025 16:34:15 -0800 Subject: [PATCH 2/5] update libxmtp ref --- Package.resolved | 4 ++-- Package.swift | 2 +- XMTP.podspec | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/Package.resolved b/Package.resolved index 5928bdd9..70fcf551 100644 --- a/Package.resolved +++ b/Package.resolved @@ -32,8 +32,8 @@ "kind" : "remoteSourceControl", "location" : "https://github.com/xmtp/libxmtp-swift.git", "state" : { - "revision" : "c9d3bdff9ead5d70a803d290de4eb75c9e9fc4f2", - "version" : "3.0.21" + "revision" : "3d13358d041b27fb4180f0d15b21d184bdac9077", + "version" : "3.0.22" } }, { diff --git a/Package.swift b/Package.swift index c049b5d1..c15b0da7 100644 --- a/Package.swift +++ b/Package.swift @@ -21,7 +21,7 @@ let package = Package( .package(url: "https://github.com/bufbuild/connect-swift", exact: "1.0.0"), .package(url: "https://github.com/apple/swift-docc-plugin.git", from: "1.4.3"), .package(url: "https://github.com/krzyzanowskim/CryptoSwift.git", exact: "1.8.3"), - .package(url: "https://github.com/xmtp/libxmtp-swift.git", exact: "3.0.21") + .package(url: "https://github.com/xmtp/libxmtp-swift.git", exact: "3.0.22") ], targets: [ .target( diff --git a/XMTP.podspec b/XMTP.podspec index 949a77e1..4cbe566c 100644 --- a/XMTP.podspec +++ b/XMTP.podspec @@ -23,7 +23,7 @@ Pod::Spec.new do |spec| spec.dependency 'CSecp256k1', '~> 0.2' spec.dependency "Connect-Swift", "= 1.0.0" - spec.dependency 'LibXMTP', '= 3.0.21' + spec.dependency 'LibXMTP', '= 3.0.22' spec.dependency 'CryptoSwift', '= 1.8.3' spec.dependency 'SQLCipher', '= 4.5.7' From c61932353d57f14ef6d47cc13b06c7b982cdacb8 Mon Sep 17 00:00:00 2001 From: cameronvoell Date: Thu, 6 Feb 2025 14:28:39 -0800 Subject: [PATCH 3/5] update libxmtp ref, default history sync on --- Package.resolved | 4 ++-- Package.swift | 2 +- Sources/XMTPiOS/Client.swift | 43 +++++++++++++++++++++++------------- XMTP.podspec | 2 +- 4 files changed, 32 insertions(+), 19 deletions(-) diff --git a/Package.resolved b/Package.resolved index 70fcf551..aa3158f3 100644 --- a/Package.resolved +++ b/Package.resolved @@ -32,8 +32,8 @@ "kind" : "remoteSourceControl", "location" : "https://github.com/xmtp/libxmtp-swift.git", "state" : { - "revision" : "3d13358d041b27fb4180f0d15b21d184bdac9077", - "version" : "3.0.22" + "revision" : "dbdd1b31656ef8973ec305c030745b361f3b335c", + "version" : "3.0.23" } }, { diff --git a/Package.swift b/Package.swift index c15b0da7..37dd9399 100644 --- a/Package.swift +++ b/Package.swift @@ -21,7 +21,7 @@ let package = Package( .package(url: "https://github.com/bufbuild/connect-swift", exact: "1.0.0"), .package(url: "https://github.com/apple/swift-docc-plugin.git", from: "1.4.3"), .package(url: "https://github.com/krzyzanowskim/CryptoSwift.git", exact: "1.8.3"), - .package(url: "https://github.com/xmtp/libxmtp-swift.git", exact: "3.0.22") + .package(url: "https://github.com/xmtp/libxmtp-swift.git", exact: "3.0.23") ], targets: [ .target( diff --git a/Sources/XMTPiOS/Client.swift b/Sources/XMTPiOS/Client.swift index cdcec5b7..b4e80221 100644 --- a/Sources/XMTPiOS/Client.swift +++ b/Sources/XMTPiOS/Client.swift @@ -54,21 +54,34 @@ public struct ClientOptions { public var dbDirectory: String? public var historySyncUrl: String? - public init( - api: Api = Api(), - codecs: [any ContentCodec] = [], - preAuthenticateToInboxCallback: PreEventCallback? = nil, - dbEncryptionKey: Data, - dbDirectory: String? = nil, - historySyncUrl: String? = nil - ) { - self.api = api - self.codecs = codecs - self.preAuthenticateToInboxCallback = preAuthenticateToInboxCallback - self.dbEncryptionKey = dbEncryptionKey - self.dbDirectory = dbDirectory - self.historySyncUrl = historySyncUrl - } + public init( + api: Api = Api(), + codecs: [any ContentCodec] = [], + preAuthenticateToInboxCallback: PreEventCallback? = nil, + dbEncryptionKey: Data, + dbDirectory: String? = nil, + historySyncUrl: String? = nil + ) { + self.api = api + self.codecs = codecs + self.preAuthenticateToInboxCallback = preAuthenticateToInboxCallback + self.dbEncryptionKey = dbEncryptionKey + self.dbDirectory = dbDirectory + if historySyncUrl == nil { + switch api.env { + case .production: + self.historySyncUrl = + "https://message-history.production.ephemera.network/" + case .local: + self.historySyncUrl = "http://localhost:5558" + default: + self.historySyncUrl = + "https://message-history.dev.ephemera.network/" + } + } else { + self.historySyncUrl = historySyncUrl + } + } } actor ApiClientCache { diff --git a/XMTP.podspec b/XMTP.podspec index 4cbe566c..afc4cee8 100644 --- a/XMTP.podspec +++ b/XMTP.podspec @@ -23,7 +23,7 @@ Pod::Spec.new do |spec| spec.dependency 'CSecp256k1', '~> 0.2' spec.dependency "Connect-Swift", "= 1.0.0" - spec.dependency 'LibXMTP', '= 3.0.22' + spec.dependency 'LibXMTP', '= 3.0.23' spec.dependency 'CryptoSwift', '= 1.8.3' spec.dependency 'SQLCipher', '= 4.5.7' From 2c45161975c2bb440fa20a70c95c235c67ceb451 Mon Sep 17 00:00:00 2001 From: cameronvoell Date: Thu, 6 Feb 2025 15:32:59 -0800 Subject: [PATCH 4/5] fix tests; verify can disable history sync --- Sources/XMTPiOS/Client.swift | 11 +++++------ Tests/XMTPTests/HistorySyncTests.swift | 25 ++++++++++++++++++------- 2 files changed, 23 insertions(+), 13 deletions(-) diff --git a/Sources/XMTPiOS/Client.swift b/Sources/XMTPiOS/Client.swift index b4e80221..429a72bd 100644 --- a/Sources/XMTPiOS/Client.swift +++ b/Sources/XMTPiOS/Client.swift @@ -60,23 +60,22 @@ public struct ClientOptions { preAuthenticateToInboxCallback: PreEventCallback? = nil, dbEncryptionKey: Data, dbDirectory: String? = nil, - historySyncUrl: String? = nil + historySyncUrl: String? = nil, + useDefaultHistorySyncUrl: Bool = true ) { self.api = api self.codecs = codecs self.preAuthenticateToInboxCallback = preAuthenticateToInboxCallback self.dbEncryptionKey = dbEncryptionKey self.dbDirectory = dbDirectory - if historySyncUrl == nil { + if useDefaultHistorySyncUrl && historySyncUrl == nil { switch api.env { case .production: - self.historySyncUrl = - "https://message-history.production.ephemera.network/" + self.historySyncUrl = "https://message-history.production.ephemera.network/" case .local: self.historySyncUrl = "http://localhost:5558" default: - self.historySyncUrl = - "https://message-history.dev.ephemera.network/" + self.historySyncUrl = "https://message-history.dev.ephemera.network/" } } else { self.historySyncUrl = historySyncUrl diff --git a/Tests/XMTPTests/HistorySyncTests.swift b/Tests/XMTPTests/HistorySyncTests.swift index a25384f7..5862178a 100644 --- a/Tests/XMTPTests/HistorySyncTests.swift +++ b/Tests/XMTPTests/HistorySyncTests.swift @@ -23,6 +23,7 @@ class HistorySyncTests: XCTestCase { api: .init(env: .local, isSecure: false), dbEncryptionKey: key, dbDirectory: "xmtp_db" + // useDefaultHistorySyncUrl: false ) ) @@ -37,6 +38,7 @@ class HistorySyncTests: XCTestCase { api: .init(env: .local, isSecure: false), dbEncryptionKey: key, dbDirectory: "xmtp_db2" +// useDefaultHistorySyncUrl: false ) ) @@ -82,14 +84,14 @@ class HistorySyncTests: XCTestCase { api: .init(env: .local, isSecure: false), dbEncryptionKey: key, dbDirectory: "xmtp_db" +// useDefaultHistorySyncUrl: false ) ) let group = try await alixClient.conversations.newGroup( with: [fixtures.bo.walletAddress]) - try await group.send(content: "hi") let messageCount = try await group.messages().count - XCTAssertEqual(messageCount, 2) + XCTAssertEqual(messageCount, 1) let alixClient2 = try await Client.create( account: alix, @@ -97,23 +99,28 @@ class HistorySyncTests: XCTestCase { api: .init(env: .local, isSecure: false), dbEncryptionKey: key, dbDirectory: "xmtp_db2" +// useDefaultHistorySyncUrl: false ) ) let state = try await alixClient2.inboxState(refreshFromNetwork: true) XCTAssertEqual(state.installations.count, 2) + try await group.send(content: "hi") + try await alixClient.conversations.syncAllConversations() sleep(2) try await alixClient2.conversations.syncAllConversations() sleep(2) - if let dm2 = try await alixClient2.findConversation( - conversationId: group.id) + if let group2 = try await alixClient2.findGroup( + groupId: group.id) { - let messageCount = try await group.messages().count - XCTAssertEqual(messageCount, 2) - } + let messageCount2 = try await group2.messages().count + XCTAssertEqual(messageCount2, 2) + } else { + XCTFail() + } } func testStreamConsent() async throws { @@ -128,6 +135,7 @@ class HistorySyncTests: XCTestCase { api: .init(env: .local, isSecure: false), dbEncryptionKey: key, dbDirectory: "xmtp_db" +// useDefaultHistorySyncUrl: false ) ) @@ -141,6 +149,7 @@ class HistorySyncTests: XCTestCase { api: .init(env: .local, isSecure: false), dbEncryptionKey: key, dbDirectory: "xmtp_db2" +// useDefaultHistorySyncUrl: false ) ) @@ -184,6 +193,7 @@ class HistorySyncTests: XCTestCase { api: .init(env: .local, isSecure: false), dbEncryptionKey: key, dbDirectory: "xmtp_db" +// useDefaultHistorySyncUrl: false ) ) @@ -205,6 +215,7 @@ class HistorySyncTests: XCTestCase { api: .init(env: .local, isSecure: false), dbEncryptionKey: key, dbDirectory: "xmtp_db2" +// useDefaultHistorySyncUrl: false ) ) From 4968cf791fe92c5dc877c05d8f81e0925cbc2184 Mon Sep 17 00:00:00 2001 From: cameronvoell Date: Thu, 6 Feb 2025 15:49:00 -0800 Subject: [PATCH 5/5] add comment on history sync message test --- Tests/XMTPTests/HistorySyncTests.swift | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/Tests/XMTPTests/HistorySyncTests.swift b/Tests/XMTPTests/HistorySyncTests.swift index 5862178a..2d4405b3 100644 --- a/Tests/XMTPTests/HistorySyncTests.swift +++ b/Tests/XMTPTests/HistorySyncTests.swift @@ -106,7 +106,10 @@ class HistorySyncTests: XCTestCase { let state = try await alixClient2.inboxState(refreshFromNetwork: true) XCTAssertEqual(state.installations.count, 2) - try await group.send(content: "hi") + // If we move this line before alixClient2 create, we fail with the group + // not being found. history sync seems to get messages, but maybe + // not groups? + try await group.send(content: "hi") try await alixClient.conversations.syncAllConversations() sleep(2)