在全局名称空间中设置一个变量以进行玩笑测试

时间:2019-06-27 15:09:09

标签: jestjs

我的代码使用全局google.maps名称空间。在dev / prod中,它是由Google地图库导入提供的。在测试中,我必须对它进行存根处理,但是不能将其放在全局对象上。

我尝试过的事情:

global.google = { 
  maps: {...
  }
}
(window as any).google = { 
  maps: {...
  }
}

我尝试将其放在beforeEach和测试本身中。每次我得到

  

TypeError:无法读取undefined的属性“地图”

1 个答案:

答案 0 :(得分:0)

设法通过投放使它起作用

declare var google: any;

使用google库的文件(不是.spec.ts测试文件)。在从另一个也要声明的文件导入google之前。不知道为什么会这样。我会开玩笑地提出一个问题。