Я использую $.proxy(this, 'methodName')
для использования методов моего объекта как обработчиков событий для событий DOM.Хороший подход к использованию тестовых шпионов с привязкой динамических функций
Когда дело доходит до тестирования, я хотел бы использовать spyOn
Jasmine для контроля того, срабатывают ли обратные вызовы. Однако, поскольку слушатель прикреплен в конструкторе моего объекта к моменту, когда я досматриваю метод, это слишком поздно, а функция raw, unspied уже используется $.proxy
.
Что такое хорошие подходы к решению этого вопроса? Одна вещь, которую я рассмотрел, напрямую следит за методами прототипа, но я беспокоюсь о том, какое влияние это может оказать на каждый тест независимо от других. Другим было бы изменить то, как я присоединяю слушателей к моему коду, но это похоже на то, чтобы выкинуть ребенка с водой для ванны.