|
|
|
|
@ -9,7 +9,7 @@ import Testing |
|
|
|
|
@testable import PadelClubData |
|
|
|
|
@testable import LeStorage |
|
|
|
|
|
|
|
|
|
struct DataAccessSyncTests { |
|
|
|
|
struct SyncDataAccessTests { |
|
|
|
|
|
|
|
|
|
let username1: String = "UserDataTests" |
|
|
|
|
let password1: String = "MyPass1234--" |
|
|
|
|
@ -24,7 +24,7 @@ struct DataAccessSyncTests { |
|
|
|
|
FileManager.default.deleteDirectoryInDocuments(directoryName: "storage-2") |
|
|
|
|
|
|
|
|
|
self.secondStoreCenter = StoreCenter(directoryName: "storage-2") |
|
|
|
|
self.secondStoreCenter.configureURLs(secureScheme: false, domain: "127.0.0.1:8000", webSockets: false) |
|
|
|
|
self.secondStoreCenter.configureURLs(secureScheme: false, domain: "127.0.0.1:8000", webSockets: false, useSynchronization: true) |
|
|
|
|
self.secondStoreCenter.tokenKeychain = MockKeychainStore(fileName: "storage-2/token.json") |
|
|
|
|
self.secondStoreCenter.deviceKeychain = MockKeychainStore(fileName: "storage-2/device.json") |
|
|
|
|
try self.secondStoreCenter.deviceKeychain.add(value: UUID().uuidString) |
|
|
|
|
@ -36,7 +36,7 @@ struct DataAccessSyncTests { |
|
|
|
|
try await self.login(storeCenter: self.secondStoreCenter, username: self.username2, password: self.password2) |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
StoreCenter.main.configureURLs(secureScheme: false, domain: "127.0.0.1:8000", webSockets: false) |
|
|
|
|
StoreCenter.main.configureURLs(secureScheme: false, domain: "127.0.0.1:8000", webSockets: false, useSynchronization: true) |
|
|
|
|
StoreCenter.main.tokenKeychain = MockKeychainStore(fileName: "storage/token.json") |
|
|
|
|
StoreCenter.main.deviceKeychain = MockKeychainStore(fileName: "storage/device.json") |
|
|
|
|
try StoreCenter.main.deviceKeychain.add(value: UUID().uuidString) |
|
|
|
|
@ -96,17 +96,21 @@ struct DataAccessSyncTests { |
|
|
|
|
// Share with user2 |
|
|
|
|
try await StoreCenter.main.setAuthorizedUsersAsync(for: tournamentA, users: [userId2]) |
|
|
|
|
|
|
|
|
|
let dataB = try await self.secondStoreCenter.testSynchronizeOnceAsync() |
|
|
|
|
let syncDataB = try SyncData(data: dataB, storeCenter: self.secondStoreCenter) |
|
|
|
|
var dataB = try await self.secondStoreCenter.testSynchronizeOnceAsync() |
|
|
|
|
var syncDataB = try SyncData(data: dataB, storeCenter: self.secondStoreCenter) |
|
|
|
|
#expect(syncDataB.grants.count == 2) |
|
|
|
|
|
|
|
|
|
#expect(eventColB.count == 1) |
|
|
|
|
#expect(tournamentColB.count == 1) |
|
|
|
|
|
|
|
|
|
// Remove sharing from user2 |
|
|
|
|
try StoreCenter.main.setAuthorizedUsers(for: tournamentA, users: []) |
|
|
|
|
try await StoreCenter.main.setAuthorizedUsersAsync(for: tournamentA, users: []) |
|
|
|
|
|
|
|
|
|
dataB = try await self.secondStoreCenter.testSynchronizeOnceAsync() |
|
|
|
|
syncDataB = try SyncData(data: dataB, storeCenter: self.secondStoreCenter) |
|
|
|
|
#expect(syncDataB.revocations.count == 1) |
|
|
|
|
#expect(syncDataB.revocationParents.count == 1) |
|
|
|
|
|
|
|
|
|
let _ = try await self.secondStoreCenter.testSynchronizeOnceAsync() |
|
|
|
|
#expect(eventColB.count == 0) |
|
|
|
|
#expect(tournamentColB.count == 0) |
|
|
|
|
|