我有一个JavaScript文件,该文件对当前域的Cookie进行了一些处理。在我的测试文件中,我正在尝试模拟document.cookie
,以便正在测试的文件可以看到cookie并执行某些操作。我按如下方式设置了模拟:但是,我正在测试的文件无法识别任何这些属性(location.origin
和document.cookie
的日志显示为空)。
const expect = require('chai').expect;
var jsdom = require('jsdom');
const { JSDOM } = jsdom;
const dom = (new JSDOM(''));
describe('something', ()=>{
it('should do something', ()=> {
global.window = {
location: {
origin: "https://blah.com"
},
document: {
cookie:{
Test: "12345" + ";" + getExpire() + ";path=/;secure"
}
}
};
document.cookie = global.window.document.cookie;
const test-target-file = require('test-target-file.js');
expect(document.cookie).to.not.equal('');
});
});
有人可以解释为什么在我正在测试的文件中无法识别模拟值吗?