File tree Expand file tree Collapse file tree 2 files changed +19
-1
lines changed
Expand file tree Collapse file tree 2 files changed +19
-1
lines changed Original file line number Diff line number Diff line change @@ -162,7 +162,15 @@ extension DiskStorage {
162162 - Returns: A md5 string
163163 */
164164 func makeFileName( for key: String ) -> String {
165- return MD5 ( key)
165+ let fileExtension = URL ( fileURLWithPath: key) . pathExtension
166+ let fileName = MD5 ( key)
167+
168+ switch fileExtension. isEmpty {
169+ case true :
170+ return fileName
171+ case false :
172+ return " \( fileName) . \( fileExtension) "
173+ }
166174 }
167175
168176 /**
Original file line number Diff line number Diff line change @@ -92,6 +92,15 @@ final class DiskStorageTests: XCTestCase {
9292 XCTAssertEqual ( entry? . expiry. date, expiry. date)
9393 }
9494
95+ func testCacheEntryPath( ) throws {
96+ let key = " test.mp4 "
97+ try storage. setObject ( testObject, forKey: key)
98+ let entry = try storage. entry ( forKey: key)
99+ let filePath = storage. makeFilePath ( for: key)
100+
101+ XCTAssertEqual ( entry. filePath, filePath)
102+ }
103+
95104 /// Test that it resolves cached object
96105 func testSetObject( ) throws {
97106 try storage. setObject ( testObject, forKey: key)
@@ -198,6 +207,7 @@ final class DiskStorageTests: XCTestCase {
198207 /// Test that it returns a correct file name
199208 func testMakeFileName( ) {
200209 XCTAssertEqual ( storage. makeFileName ( for: key) , MD5 ( key) )
210+ XCTAssertEqual ( storage. makeFileName ( for: " test.mp4 " ) , " \( MD5 ( " test.mp4 " ) ) .mp4 " )
201211 }
202212
203213 /// Test that it returns a correct file path
You can’t perform that action at this time.
0 commit comments