71 lines
1.7 KiB
Swift
71 lines
1.7 KiB
Swift
//
|
|
// SKCacheTests.swift
|
|
// SKPhotoBrowser
|
|
//
|
|
// Created by Kevin Wolkober on 6/13/16.
|
|
// Copyright © 2016 suzuki_keishi. All rights reserved.
|
|
//
|
|
|
|
import XCTest
|
|
@testable import SKPhotoBrowser
|
|
|
|
|
|
class SKCacheTests: XCTestCase {
|
|
|
|
var cache: SKCache!
|
|
let image = UIImage()
|
|
let key = "test_image"
|
|
|
|
override func setUp() {
|
|
super.setUp()
|
|
|
|
self.cache = SKCache()
|
|
}
|
|
|
|
override func tearDown() {
|
|
self.cache = nil
|
|
|
|
super.tearDown()
|
|
}
|
|
|
|
func testInit() {
|
|
XCTAssertNotNil(self.cache.imageCache)
|
|
XCTAssert(self.cache.imageCache is SKDefaultImageCache, "Default image cache should be loaded on init")
|
|
}
|
|
|
|
func testDefaultCacheImageForKey() {
|
|
// given
|
|
let cache = (self.cache.imageCache as? SKDefaultImageCache)!.cache
|
|
cache.setObject(self.image, forKey: self.key)
|
|
|
|
// when
|
|
let cachedImage = self.cache.imageForKey(self.key)
|
|
|
|
// then
|
|
XCTAssertNotNil(cachedImage)
|
|
}
|
|
|
|
func testDefaultCacheSetImageForKey() {
|
|
// when
|
|
self.cache.setImage(self.image, forKey: self.key)
|
|
|
|
// then
|
|
let cache = (self.cache.imageCache as? SKDefaultImageCache)!.cache
|
|
let cachedImage = cache.objectForKey(self.key) as? UIImage
|
|
XCTAssertNotNil(cachedImage)
|
|
}
|
|
|
|
func testDefaultCacheRemoveImageForKey() {
|
|
// given
|
|
let cache = (self.cache.imageCache as? SKDefaultImageCache)!.cache
|
|
cache.setObject(self.image, forKey: self.key)
|
|
|
|
// when
|
|
self.cache.removeImageForKey(self.key)
|
|
|
|
// then
|
|
let cachedImage = self.cache.imageForKey(self.key)
|
|
XCTAssertNil(cachedImage)
|
|
}
|
|
}
|