Как запустить процесс с настройками даты / времени, отличными от остальной системы?


0

Я разрабатываю настольное приложение для OS X, поведение которого зависит от даты. Я хочу проверить поведение, не дожидаясь определенной даты.

Я бы предпочел не изменять настройки даты всей системы, так как боюсь, что это может привести к сбоям в сборке систем и т. Д. Использование ВМ возможно, но для настройки требуется время.

Есть ли простой способ запустить процесс и его потомков в дельте времени относительно фактического времени, не влияя на остальную часть системы?


1
Реальное решение состоит в том, чтобы позволить вашему коду переопределить дату (создайте функцию, которая получает дату, но когда вы находитесь в разработке, переопределите эту функцию, чтобы всегда возвращать дату теста).
Andrew Larsson

Ответы:


1

Нет. Система не раздваивает время.

Вам понадобится приложение для обработки временного сдвига или запуска независимо от системного времени или упаковки приложения для запуска на виртуальной машине или в другом контейнере, таком как докер. В некоторых ограниченных случаях переменная часового пояса может помочь вам немного настроить, но произвольная установка абсолютно не связанного времени не реализована в OS X.


Не возможно изменить дату, отредактировав Схемы? Я знаю, что вы можете сделать симуляцию местоположения, например. (CMD & lt;)
StrawHara

1
@MrMojoRisin С программным обеспечением возможно все :-). Однако в настоящее время это не реализовано.
bmike

@MrMojoRisin Какие схемы?
jacwah

@jacwah Сделать CMD + & lt; в xcode;) developer.apple.com/library/ios/recipes/...
StrawHara

1
@danielAzuelos Linux имеет виртуализацию времени через UML ( LWN ).
jacwah
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.