diff --git a/Sources/PLFile/Path/PLFile+Path.swift b/Sources/PLFile/Path/PLFile+Path.swift index 728bf2b1..23b556ce 100644 --- a/Sources/PLFile/Path/PLFile+Path.swift +++ b/Sources/PLFile/Path/PLFile+Path.swift @@ -108,6 +108,18 @@ public struct Path { } } +extension Path: ExpressibleByStringLiteral { + public init(stringLiteral value: StringLiteralType) { + self.init(value) + } + public init(unicodeScalarLiteral value: String) { + self.init(value) + } + public init(extendedGraphemeClusterLiteral value: String) { + self.init(value) + } +} + //MARK: - subscript extension Path { /// A subscript that identifies the position of the path. diff --git a/Tests/PLFileTests/PLFileTests.swift b/Tests/PLFileTests/PLFileTests.swift index e92ce87a..a58e71ff 100644 --- a/Tests/PLFileTests/PLFileTests.swift +++ b/Tests/PLFileTests/PLFileTests.swift @@ -5,7 +5,7 @@ final class PLFileTests: XCTestCase { private var folder: PLFile.Folder! override func setUp() { super.setUp() - folder = try! PLFile.Folder(path: .home).createSubfolder(at: Path(".plfileTest")) + folder = try! PLFile.Folder(path: .home).createSubfolder(at: ".plfileTest") try! folder.empty() } @@ -15,7 +15,7 @@ final class PLFileTests: XCTestCase { } func testingCreateFile() { - let file = try! folder.createFile(at: Path("test.swift")) + let file = try! folder.createFile(at: "test.swift") XCTAssertEqual(file.name, "test.swift") XCTAssertEqual(file.store.path.rawValue, folder.store.path.rawValue + "test.swift") XCTAssertEqual(file.extension, "swift") @@ -24,15 +24,16 @@ final class PLFileTests: XCTestCase { } func testingFileWrite() { - let file = try! folder.createFile(at: Path("testWrite.swift")) + let file = try! folder.createFile(at: "testWrite.swift") try! file.write("print(1)") try XCTAssertEqual(String(data: file.read(), encoding: .utf8), "print(1)") } func testingFileMove() { - let originFolder = try! folder.createSubfolder(at: Path("folderA")) - let targetFolder = try! folder.createSubfolder(at: Path("folderB")) + let originFolder = try! folder.createSubfolder(at: "folderA") + let targetFolder = try! folder.createSubfolder(at: "folderB") + try! originFolder.move(to: targetFolder) XCTAssertEqual(originFolder.store.path.rawValue, folder.store.path.rawValue + "folderB/folderA/" ) }