Skip to content

Commit 3d15e5e

Browse files
committed
clean up
1 parent f3c7375 commit 3d15e5e

9 files changed

Lines changed: 35 additions & 78 deletions

File tree

Sources/SQLiteData/CloudKit/CloudKitSharing.swift

Lines changed: 2 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -339,14 +339,7 @@
339339
)
340340
}
341341

342-
public func makeUIViewController(context: Context) -> UIViewController {
343-
guard self.context == .live
344-
else {
345-
Task {
346-
try await syncEngine.fetchChanges()
347-
}
348-
return UIViewController()
349-
}
342+
public func makeUIViewController(context: Context) -> UICloudSharingController {
350343
let controller = UICloudSharingController(
351344
share: sharedRecord.share,
352345
container: sharedRecord.container.rawValue
@@ -357,7 +350,7 @@
357350
}
358351

359352
public func updateUIViewController(
360-
_ uiViewController: UIViewController,
353+
_ uiViewController: UICloudSharingController,
361354
context: Context
362355
) {
363356
}

Sources/SQLiteData/CloudKit/Internal/MockSyncEngine.swift

Lines changed: 0 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@ import Dependencies
88
package final class MockSyncEngine: SyncEngineProtocol {
99
package let database: MockCloudDatabase
1010
package let parentSyncEngine: SyncEngine
11-
private let _state: LockIsolated<MockSyncEngineState>
1211
package let _fetchChangesScopes = LockIsolated<[CKSyncEngine.FetchChangesOptions.Scope]>([])
1312
package let _acceptedShareMetadata = LockIsolated<Set<ShareMetadata>>([])
1413
package let _pendingRecordZoneChanges = LockIsolated<
@@ -27,15 +26,13 @@ import Dependencies
2726
package init(
2827
database: MockCloudDatabase,
2928
parentSyncEngine: SyncEngine,
30-
state: MockSyncEngineState,
3129
fileID: StaticString = #fileID,
3230
filePath: StaticString = #filePath,
3331
line: UInt = #line,
3432
column: UInt = #column
3533
) {
3634
self.database = database
3735
self.parentSyncEngine = parentSyncEngine
38-
self._state = LockIsolated(state)
3936
self.fileID = fileID
4037
self.filePath = filePath
4138
self.line = line
@@ -46,10 +43,6 @@ import Dependencies
4643
database.databaseScope
4744
}
4845

49-
package var state: MockSyncEngineState {
50-
_state.withValue(\.self)
51-
}
52-
5346
package func acceptShare(metadata: ShareMetadata) {
5447
_ = _acceptedShareMetadata.withValue { $0.insert(metadata) }
5548
}
@@ -140,10 +133,6 @@ import Dependencies
140133
package func cancelOperations() async {
141134
}
142135

143-
144-
/// ----------
145-
146-
147136
package var pendingRecordZoneChanges: [CKSyncEngine.PendingRecordZoneChange] {
148137
_pendingRecordZoneChanges.withValue { Array($0) }
149138
}
@@ -207,11 +196,6 @@ import Dependencies
207196
}
208197
}
209198

210-
@available(iOS 17, macOS 14, tvOS 17, watchOS 10, *)
211-
package final class MockSyncEngineState: CKSyncEngineStateProtocol {
212-
213-
}
214-
215199
@available(iOS 17, macOS 14, tvOS 17, watchOS 10, *)
216200
extension SyncEngine {
217201
package func processPendingRecordZoneChanges(

Sources/SQLiteData/CloudKit/Internal/SyncEngineProtocol+Live.swift

Lines changed: 19 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -2,30 +2,30 @@
22
import CloudKit
33

44
@available(iOS 17, macOS 14, tvOS 17, watchOS 10, *)
5-
extension CKSyncEngine: SyncEngineProtocol {
6-
package var pendingRecordZoneChanges: [PendingRecordZoneChange] {
7-
state.pendingRecordZoneChanges
8-
}
5+
extension CKSyncEngine: SyncEngineProtocol {
6+
package var pendingRecordZoneChanges: [PendingRecordZoneChange] {
7+
state.pendingRecordZoneChanges
8+
}
99

10-
package var pendingDatabaseChanges: [PendingDatabaseChange] {
11-
state.pendingDatabaseChanges
12-
}
10+
package var pendingDatabaseChanges: [PendingDatabaseChange] {
11+
state.pendingDatabaseChanges
12+
}
1313

14-
package func add(pendingRecordZoneChanges: [PendingRecordZoneChange]) {
15-
state.add(pendingRecordZoneChanges: pendingRecordZoneChanges)
16-
}
14+
package func add(pendingRecordZoneChanges: [PendingRecordZoneChange]) {
15+
state.add(pendingRecordZoneChanges: pendingRecordZoneChanges)
16+
}
1717

18-
package func remove(pendingRecordZoneChanges: [PendingRecordZoneChange]) {
19-
state.remove(pendingRecordZoneChanges: pendingRecordZoneChanges)
20-
}
18+
package func remove(pendingRecordZoneChanges: [PendingRecordZoneChange]) {
19+
state.remove(pendingRecordZoneChanges: pendingRecordZoneChanges)
20+
}
2121

22-
package func add(pendingDatabaseChanges: [PendingDatabaseChange]) {
23-
state.add(pendingDatabaseChanges: pendingDatabaseChanges)
24-
}
22+
package func add(pendingDatabaseChanges: [PendingDatabaseChange]) {
23+
state.add(pendingDatabaseChanges: pendingDatabaseChanges)
24+
}
2525

26-
package func remove(pendingDatabaseChanges: [PendingDatabaseChange]) {
27-
state.remove(pendingDatabaseChanges: pendingDatabaseChanges)
28-
}
26+
package func remove(pendingDatabaseChanges: [PendingDatabaseChange]) {
27+
state.remove(pendingDatabaseChanges: pendingDatabaseChanges)
28+
}
2929

3030
package func recordZoneChangeBatch(
3131
pendingChanges: [PendingRecordZoneChange],
@@ -35,8 +35,4 @@ extension CKSyncEngine: SyncEngineProtocol {
3535
.RecordZoneChangeBatch(pendingChanges: pendingChanges, recordProvider: recordProvider)
3636
}
3737
}
38-
39-
@available(iOS 17, macOS 14, tvOS 17, watchOS 10, *)
40-
extension CKSyncEngine.State: CKSyncEngineStateProtocol {
41-
}
4238
#endif

Sources/SQLiteData/CloudKit/Internal/SyncEngineProtocol.swift

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,10 @@
22
import CloudKit
33

44
@available(iOS 17, macOS 14, tvOS 17, watchOS 10, *)
5-
package protocol SyncEngineProtocol<Database, State>: AnyObject, Sendable {
6-
associatedtype State: CKSyncEngineStateProtocol
5+
package protocol SyncEngineProtocol<Database>: AnyObject, Sendable {
76
associatedtype Database: CloudDatabase
87

98
var database: Database { get }
10-
var state: State { get }
119

1210
func cancelOperations() async
1311
func fetchChanges(_ options: CKSyncEngine.FetchChangesOptions) async throws
@@ -25,8 +23,4 @@
2523
func add(pendingDatabaseChanges: [CKSyncEngine.PendingDatabaseChange])
2624
func remove(pendingDatabaseChanges: [CKSyncEngine.PendingDatabaseChange])
2725
}
28-
29-
@available(iOS 17, macOS 14, tvOS 17, watchOS 10, *)
30-
package protocol CKSyncEngineStateProtocol: Sendable {
31-
}
3226
#endif

Sources/SQLiteData/CloudKit/SyncEngine.swift

Lines changed: 2 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -130,16 +130,8 @@
130130
defaultZone: defaultZone,
131131
defaultSyncEngines: { _, syncEngine in
132132
(
133-
private: MockSyncEngine(
134-
database: privateDatabase,
135-
parentSyncEngine: syncEngine,
136-
state: MockSyncEngineState()
137-
),
138-
shared: MockSyncEngine(
139-
database: sharedDatabase,
140-
parentSyncEngine: syncEngine,
141-
state: MockSyncEngineState()
142-
)
133+
private: MockSyncEngine(database: privateDatabase, parentSyncEngine: syncEngine),
134+
shared: MockSyncEngine(database: sharedDatabase, parentSyncEngine: syncEngine)
143135
)
144136
},
145137
userDatabase: userDatabase,

Tests/SQLiteDataTests/CloudKitTests/NextRecordZoneChangeBatchTests.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
final class NextRecordZoneChangeBatchTests: BaseCloudKitTests, @unchecked Sendable {
1414
@available(iOS 17, macOS 14, tvOS 17, watchOS 10, *)
1515
@Test func noMetadataForRecord() async throws {
16-
syncEngine.private.state.add(
16+
syncEngine.private.add(
1717
pendingRecordZoneChanges: [.saveRecord(Reminder.recordID(for: 1))]
1818
)
1919

Tests/SQLiteDataTests/Internal/BaseCloudKitTests.swift

Lines changed: 8 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -112,8 +112,8 @@ class BaseCloudKitTests: @unchecked Sendable {
112112
func signIn() async {
113113
container._accountStatus.withValue { $0 = .available }
114114
// NB: Emulates what CKSyncEngine does when signing in
115-
syncEngine.private.state.removePendingChanges()
116-
syncEngine.shared.state.removePendingChanges()
115+
syncEngine.private.removePendingChanges()
116+
syncEngine.shared.removePendingChanges()
117117
await syncEngine.handleEvent(
118118
.accountChange(changeType: .signIn(currentUser: currentUserRecordID)),
119119
syncEngine: syncEngine.private
@@ -130,12 +130,12 @@ class BaseCloudKitTests: @unchecked Sendable {
130130
else { return }
131131

132132
syncEngine.shared.assertFetchChangesScopes([])
133-
syncEngine.shared.state.assertPendingDatabaseChanges([])
134-
syncEngine.shared.state.assertPendingRecordZoneChanges([])
133+
syncEngine.shared.assertPendingDatabaseChanges([])
134+
syncEngine.shared.assertPendingRecordZoneChanges([])
135135
syncEngine.shared.assertAcceptedShareMetadata([])
136136
syncEngine.private.assertFetchChangesScopes([])
137-
syncEngine.private.state.assertPendingDatabaseChanges([])
138-
syncEngine.private.state.assertPendingRecordZoneChanges([])
137+
syncEngine.private.assertPendingDatabaseChanges([])
138+
syncEngine.private.assertPendingRecordZoneChanges([])
139139
syncEngine.private.assertAcceptedShareMetadata([])
140140

141141
try! syncEngine.metadatabase.read { db in
@@ -207,13 +207,11 @@ extension SyncEngine {
207207
(
208208
MockSyncEngine(
209209
database: container.privateCloudDatabase as! MockCloudDatabase,
210-
parentSyncEngine: syncEngine,
211-
state: MockSyncEngineState()
210+
parentSyncEngine: syncEngine
212211
),
213212
MockSyncEngine(
214213
database: container.sharedCloudDatabase as! MockCloudDatabase,
215-
parentSyncEngine: syncEngine,
216-
state: MockSyncEngineState()
214+
parentSyncEngine: syncEngine
217215
)
218216
)
219217
},

Tests/SQLiteDataTests/Internal/CloudKit+CustomDump.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -157,7 +157,7 @@
157157
}
158158

159159
@available(iOS 17, macOS 14, tvOS 17, watchOS 10, *)
160-
extension MockSyncEngineState: CustomDumpReflectable {
160+
extension MockSyncEngine: CustomDumpReflectable {
161161
package var customDumpMirror: Mirror {
162162
return Mirror(
163163
self,

Tests/SQLiteDataTests/Internal/CloudKitTestHelpers.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -153,7 +153,7 @@ extension MockSyncEngine {
153153
}
154154

155155
@available(iOS 17, macOS 14, tvOS 17, watchOS 10, *)
156-
extension MockSyncEngineState {
156+
extension MockSyncEngine {
157157
package func assertPendingRecordZoneChanges(
158158
_ changes: OrderedSet<CKSyncEngine.PendingRecordZoneChange>,
159159
fileID: StaticString = #fileID,

0 commit comments

Comments
 (0)