我在TypeScript Node.js应用程序中使用Inversify进行依赖注入。这在实际运行应用程序时效果很好。
然而,@injectable()
注释似乎削弱了我的测试。运行测试时,我现在收到错误消息:
TypeError: Reflect.hasOwnMetadata is not a function
我以前见过这个,并得到了其他SO答案的帮助:https://stackoverflow.com/a/43115660/4003671
但是,导入inversify.config
并不能解决我的测试中的问题。如果我从我正在测试的类中删除@injectable()
注释,那么测试就会运行。
我在测试中实际上并不需要DI,因此以某种方式禁用它将是一种可接受的解决方案。
有没有人见过这个?
答案 0 :(得分:1)
想想我已经明白了。导入我的整个key=bond.investment , value=10
key=bond.encashment, value=15
bond.investment=10
bond.encashment=15
没有用,但如果我在单元测试的顶部专门inversify.config
,那么这一切都很花哨。