diff --git a/Tests/SwiftGenKitTests/FontsTests.swift b/Tests/SwiftGenKitTests/FontsTests.swift index 2050a44..b1e95a7 100644 --- a/Tests/SwiftGenKitTests/FontsTests.swift +++ b/Tests/SwiftGenKitTests/FontsTests.swift @@ -7,7 +7,8 @@ // import XCTest -import SwiftGenKit +@testable import SwiftGenKit +import PathKit import AppKit.NSFont class FontsTests: XCTestCase { @@ -25,4 +26,32 @@ class FontsTests: XCTestCase { let result = parser.stencilContext() XCTDiffContexts(result, expected: "defaults.plist", sub: .fonts) } + + // MARK: - Path relative(to:) + + func testPathRelativeTo_UnrelatedIsNil() throws { + let parent = Path("/a/b/c") + let file = Path("/d/e/f") + + XCTAssertNil(file.relative(to: parent)) + } + + func testPathRelativeTo_RelatedIsNotNil() throws { + let parent = Path("/a/b/c") + let file = Path("/a/b/c/d/e") + + XCTAssertNotNil(file.relative(to: parent)) + } + + func testPathRelativeTo_ResultIsNotFullPath() throws { + let parent = Path("a/b/c") + let absoluteParent = parent.absolute() + let file = Path("a/b/c/d/e") + let absoluteFile = file.absolute() + + XCTAssertEqual(file.relative(to: parent), "d/e") + XCTAssertEqual(file.relative(to: absoluteParent), "d/e") + XCTAssertEqual(absoluteFile.relative(to: parent), "d/e") + XCTAssertEqual(absoluteFile.relative(to: absoluteParent), "d/e") + } }