我似乎无法弄清楚如何使用sinon来存储innerWidth和innerHeight属性。有谁知道语法是什么,或者它是否可能?
Souce代码:
describe('test', () => {
let sandbox;
beforeEach(() => {
sandbox = sinon.sandbox.create();
sandbox.stub(window, "innerWidth").get(() => 1000);
sandbox.stub(window, "innerHeight").get(() => 1000);
})
afterEach(() => {
sandbox.restore();
});
it('should do a thing', () => {
console.log(window.innerWidth); // 1024
console.log(window.innerHeight); // 768
});
});
控制台输出:
PASS src/components/Tooltip/tests/index.test.js
test
✓ should do a thing (2ms)
console.log src/components/Tooltip/tests/index.test.js:58
1024
console.log src/components/Tooltip/tests/index.test.js:59
768
Test Suites: 1 passed, 1 total
Tests: 1 passed, 1 total
Snapshots: 0 total
Time: 0.573s, estimated 1s
答案 0 :(得分:0)
我也有同样的问题。我如下解决:
window.innerWidth = 1280;
不确定这是否是最好的方法,但是可以解决我的问题。
如果您找到了其他方法,请分享。