update tests

sync3
Laurent 6 months ago
parent 9668bfde7e
commit 6f84f671ba
  1. 8
      PadelClubDataTests/DataAccessSyncTests.swift
  2. 10
      PadelClubDataTests/SynchronizationTests.swift

@ -20,6 +20,8 @@ struct DataAccessSyncTests {
var secondStoreCenter: StoreCenter
init() async throws {
FileManager.default.deleteDirectoryInDocuments(directoryName: "storage")
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)
@ -30,7 +32,9 @@ struct DataAccessSyncTests {
self.secondStoreCenter.classProject = "PadelClubData"
let token2 = try? self.secondStoreCenter.rawTokenShouldNotBeUsed()
if token2 == nil {
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.tokenKeychain = MockKeychainStore(fileName: "storage/token.json")
@ -39,8 +43,10 @@ struct DataAccessSyncTests {
StoreCenter.main.classProject = "PadelClubData"
let token = try? StoreCenter.main.rawTokenShouldNotBeUsed()
if token == nil {
try await self.login(storeCenter: StoreCenter.main, username: self.username1, password: self.password1)
}
}
mutating func login(storeCenter: StoreCenter, username: String, password: String) async throws {
let _: CustomUser = try await storeCenter.service().login(username: username, password: password)
@ -88,7 +94,7 @@ struct DataAccessSyncTests {
await tournamentColA.addOrUpdateAsync(instance: tournamentA)
// Share with user2
try StoreCenter.main.setAuthorizedUsers(for: tournamentA, users: [userId2])
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)

@ -23,6 +23,9 @@ struct SynchronizationTests {
init() async throws {
FileManager.default.deleteDirectoryInDocuments(directoryName: "storage")
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.tokenKeychain = MockKeychainStore(fileName: "storage-2/token.json")
@ -212,9 +215,16 @@ struct SynchronizationTests {
// cleanup sync residues
let _ = try await self.secondStoreCenter.testSynchronizeOnceAsync()
#expect(eventCollectionA.count == 0)
#expect(eventCollectionB.count == 0)
// Create
let eventA: Event = Event(creator: userId, club: nil, name: "test-b")
await eventCollectionA.addOrUpdateAsync(instance: eventA)
#expect(eventCollectionA.count == 1)
let serverEvents: [Event] = try await StoreCenter.main.service().get()
#expect(serverEvents.count == 1)
// Retrieve Event
let dataB = try await self.secondStoreCenter.testSynchronizeOnceAsync()

Loading…
Cancel
Save