Angularjs jasmine测试需要定义$window

Angularjs jasmine测试需要定义$window,angularjs,angularjs-directive,jasmine,Angularjs,Angularjs Directive,Jasmine,我正在用gulp任务运行jasmine测试,我想测试一个指令。指令本身是一个简单的切换按钮组件,不需要依赖项。所以,我将遵循教程,从 beforeEach(module('app')); beforeEach(inject(function($rootScope) { scope = $rootScope.$new(); })); it('does something', function() { expect(scope).toBeDefined(); }); 但是测试失败了

我正在用gulp任务运行jasmine测试,我想测试一个指令。指令本身是一个简单的切换按钮组件,不需要依赖项。所以,我将遵循教程,从

beforeEach(module('app'));

beforeEach(inject(function($rootScope) {
   scope = $rootScope.$new();
}));

it('does something', function() {
   expect(scope).toBeDefined();
});
但是测试失败了,因为日志不清楚

TypeError: 'undefined' is not an object (evaluating '$window.PUBLISH_SETTINGS.webApiUrl')
不知何故,angular从我的应用程序内部调用了一段似乎未连接的代码,这需要定义$window。这里发生了什么?我如何隔离我的指令,这样我就不需要弄乱$window了