我正在处理遗留环境,我有包含模块或/和类的Typescript文件
class SomeClass {
...
}
module AndAModule {
export namespace NestedNamespace {
...
}
}
注意缺少" export"顶级模块/类中的关键字。
我想在" NestedNamespace"中测试函数。使用Jest库。但是,当我在测试文件中导入Typescript文件时:
var service = require("/path/to/file/SomeService.ts")
我既没有访问SomeService.ts文件中定义的类也没有访问模块。如果添加"导出"在模块和类I之前的关键字能够通过从require返回的对象访问它们,但是这会破坏整个环境和其他文件,因为在此之后,模块和类不存在于typescript生成的outFile中。
如何在不添加任何导出语句的情况下从文件导入所需的模块?
答案 0 :(得分:0)
如果你有一个没有被导出的函数,那么导出的其他函数就是调用那个未导出的函数。测试导出的方法,您将间接测试未导出的方法。