охирги кластур Cache<T>: CacheProtocol {
func getValue(forKey key: String) -> T? {
return storage[key]
}
func fetchValue(forKey key: String, completion: @escaping (T?) -> Void) {
let value = storage[key]
completion(value)
}
}
охирги кластур CacheTests: XCTestCase {
override func setUp() {
super.setUp()
}
func testSetAndGetValue() {
let cache = Cache<String>()
let key: String = "key"
let value: String = "value"
cache.setValue(value, forKey: key)
XCTAssertEqual(cache.getValue(forKey: key), value)
cache.setValue(nil, forKey: key)
XCTAssertTrue(cache.getValue(forKey: key) == nil)
}
func testCompletion() {
}
}
CacheTests.defaultTestSuite.run()