From 35fcc792bfef8ee460c551182074e698eade916e Mon Sep 17 00:00:00 2001 From: Butta Date: Mon, 13 Jan 2020 02:55:27 +0530 Subject: [PATCH] TestFoundation: don't use hard-coded TestURL test directory on Android Use NSTemporaryDirectory() instead and reset the working directory when done. --- TestFoundation/TestURL.swift | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/TestFoundation/TestURL.swift b/TestFoundation/TestURL.swift index 3477262b7c..2ae13c477c 100644 --- a/TestFoundation/TestURL.swift +++ b/TestFoundation/TestURL.swift @@ -286,6 +286,7 @@ class TestURL : XCTestCase { static var gBaseCurrentWorkingDirectoryPath : String { return FileManager.default.currentDirectoryPath } + static var gSavedPath = "" static var gRelativeOffsetFromBaseCurrentWorkingDirectory: UInt = 0 static let gFileExistsName = "TestCFURL_file_exists\(ProcessInfo.processInfo.globallyUniqueString)" static let gFileDoesNotExistName = "TestCFURL_file_does_not_exist" @@ -339,9 +340,8 @@ class TestURL : XCTestCase { } } - #if os(Android) - FileManager.default.changeCurrentDirectoryPath("/data/local/tmp") - #endif + TestURL.gSavedPath = FileManager.default.currentDirectoryPath + FileManager.default.changeCurrentDirectoryPath(NSTemporaryDirectory()) let cwd = FileManager.default.currentDirectoryPath let cwdURL = URL(fileURLWithPath: cwd, isDirectory: true) @@ -358,6 +358,7 @@ class TestURL : XCTestCase { let error = strerror(errno)! XCTFail("Failed to set up test paths: \(String(cString: error))") } + defer { FileManager.default.changeCurrentDirectoryPath(TestURL.gSavedPath) } // test with file that exists var path = TestURL.gFileExistsPath @@ -403,6 +404,7 @@ class TestURL : XCTestCase { let error = strerror(errno)! XCTFail("Failed to set up test paths: \(String(cString: error))") } + defer { FileManager.default.changeCurrentDirectoryPath(TestURL.gSavedPath) } // test with file that exists var path = TestURL.gFileExistsPath