У меня есть скрипт, который я хотел бы протестировать, который включает глобальные переменные, некоторые из которых инициализируются вызовами функций. Например
var g_count = 0;
var g_util = addLibrary( "util.lib" );
Я бы хотел посмеяться над g_count
и g_util
Если у меня есть вызов функции в моей функции тестирования, я могу легко смоделировать его с помощью addLibrary = jasmine.createSpy();
, но как только он попадет в глобальную область видимости, произойдет сбой, и я получу сообщение об ошибке
Ссылочная ошибка: addLibrary не определена.
Редактировать: Я понял, как смоделировать переменную. Я добавил его в глобальное свойство,
var globals = {
g_count : null
}
Экспортировал
module.exports = {
globals: globals
}
Потом подсмотрел
spyOnProperty(util.globals, 'g_count').and.returnValue(5);
Я до сих пор не могу понять функцию addLibrary