我在实际的JS文件(main.js)中有一个方法/函数,如下所示:
function returnPath() {
return `path=${encodeURIComponent(window.location.href.replace(window.location.origin, ''))}`;
}
现在,在我的茉莉花规格文件(mainSpec.js)中,我具有以下代码:
describe('Test returnPath function', () => {
it('test the path string returned', () => {
const window = {
location: {
href: "https://www.example.com/hello/world",
origin: "https://www.example.com/"
}
};
const pathStr = returnPath();
// assert
expect(pathStr).toBe('path=hello%2Fworld');
});
});
但是,当我运行测试时,它失败,因为window.location.href没有指向在“ it”块中初始化的自定义对象。
如何从spec文件中注入/提供实际功能所需的对象?