native macOS codings agent orchestrator prowl.onev.cat
Something went wrong. Try again.
Swift
1234567891011121314151617181920212223242526272829303132333435import Foundation
@testable import Prowl
nonisolated final class SettingsTestStorage: @unchecked Sendable { private let lock = NSLock() private var dataByURL: [URL: Data] = [:]
var storage: SettingsFileStorage { SettingsFileStorage( load: { try self.load($0) }, save: { try self.save($0, $1) } ) }
private func load(_ url: URL) throws -> Data { lock.lock() defer { lock.unlock() } guard let data = dataByURL[url] else { throw SettingsTestStorageError.missing } return data }
private func save(_ data: Data, _ url: URL) throws { lock.lock() defer { lock.unlock() } dataByURL[url] = data }}
enum SettingsTestStorageError: Error { case missing}