35 lines
844 B
Swift
35 lines
844 B
Swift
import Foundation
|
|
|
|
public final class MockPersistenceService: @unchecked Sendable, PersistenceService {
|
|
|
|
private var authData: AuthData?
|
|
private var preferences: [String: String] = [:]
|
|
|
|
public init() {}
|
|
|
|
public func loadAuth() async throws -> AuthData {
|
|
guard let authData else { throw PersistenceError.notFound }
|
|
return authData
|
|
}
|
|
|
|
public func saveAuth(_ auth: AuthData) async throws {
|
|
authData = auth
|
|
}
|
|
|
|
public func clearAuth() async throws {
|
|
authData = nil
|
|
}
|
|
|
|
public func getPreference(key: String) async throws -> String? {
|
|
preferences[key]
|
|
}
|
|
|
|
public func setPreference(key: String, value: String) async throws {
|
|
preferences[key] = value
|
|
}
|
|
|
|
public func clearAll() async throws {
|
|
authData = nil
|
|
preferences = [:]
|
|
}
|
|
}
|