Итак, я работаю над быстрым проектом, управляемым менеджером пакетов Swift.Для некоторых моих тестов я хотел бы загрузить файлы из каталога ${PACKAGE_ROOT}/testData
Дело в том, что если я запускаю тесты через командную строку (то есть $ swift test
, тогда я могу получить рут, используя текущийпуть к каталогу: FileManager.default.currentDirectoryPath
. Однако я хотел бы использовать тестовый прогон XCode, чтобы воспользоваться преимуществами отладчика, и при запуске из тестового прогона currentDirectoryPath
находится в DerivedData
.
Есть хороший способ получить путь относительно каталога тестового проекта во время выполнения? Несколько других важных вещей здесь:
Я хочу, чтобы тесты проходили независимо от изместоположение проекта. Т.е. если кто-то клонирует проект в произвольное место, тесты должны выполняться одинаково. Поэтому явно задан полный путь к проекту.
Я хочу что-то избежатькоторый требует модификации сгенерированного проекта XCode, потому что эти изменения не будут стабильными, если проект должен быть повторно сгенерирован из пакета. То есть, если новая зависимость или цельдобавлено.