В нескольких классах я использую [NSApp delegate]
, чтобы получить мой основной AppDelegate, откуда я обращаюсь к некоторым свойствам. Это работает так, как ожидалось, но когда I Unit Test код, который использует это, этот делегат nil.Как использовать AppDelegate в тестовых случаях?
Как я могу справиться с этим в своем тесте? Можно ли написать макет или что-то еще?
Что это за свойства? Похоже, что они должны быть в разных классах, кроме App Delegate; возможно, используя синглтонную модель. – trojanfoe
Например, у меня есть пользовательское свойство * UserSettings *. Вы правы, может быть, имеет смысл положить это свойство в другое место. Я просто вижу AppDelegate как глобальный класс, доступный из любого места, что делает его хорошим выбором для хранения глобальных данных. – dhrm
В этом случае, однако, удобно иметь другой класс, который не действует, поскольку делегат приложения сохраняет эти свойства. Он должен быть легко перемещаться и реализовываться. – trojanfoe