Jasmine依赖

时间:2013-01-19 01:38:24

标签: javascript jasmine

我正在使用一个javascript文件,a)声明一个带有函数的对象,b)用一个希望在外部声明的哈希调用该对象的init函数。我的Jasmine规范抱怨它无法找到哈希,因为它不存在!

var Foo = {
  init: function(param) { ... }
};

Foo.init(externalVariable);

我最初的感觉是这个结构很糟糕,而不仅仅是声明变量,外部声明也应该调用函数,但是现在让我们忽略它。

有没有办法让我在加载源文件之前将此变量声明为Jasmine?

由于

1 个答案:

答案 0 :(得分:3)

将值分配给全局对象(如果它确实是全局对象)。不要忘记在测试结束时将其删除以保持环境清洁以进行其他测试。

beforeEach(function() {
  window.externalVariable = "this kinda sucks";
});

afterEach(function() {
  delete window.externalVariable;
});