2019-10-17 16:01:46 +08:00
|
|
|
const React = require('react');
|
|
|
|
|
2019-10-22 11:47:09 +08:00
|
|
|
// eslint-disable-next-line no-console
|
2019-10-17 16:01:46 +08:00
|
|
|
console.log('Current React Version:', React.version);
|
|
|
|
|
2017-11-06 17:34:14 +08:00
|
|
|
/* eslint-disable global-require */
|
2016-11-23 16:14:57 +08:00
|
|
|
if (typeof window !== 'undefined') {
|
2017-08-24 10:19:13 +08:00
|
|
|
global.window.resizeTo = (width, height) => {
|
|
|
|
global.window.innerWidth = width || global.window.innerWidth;
|
|
|
|
global.window.innerHeight = height || global.window.innerHeight;
|
|
|
|
global.window.dispatchEvent(new Event('resize'));
|
|
|
|
};
|
2018-05-22 16:39:17 +08:00
|
|
|
global.window.scrollTo = () => {};
|
2019-12-23 18:33:08 +08:00
|
|
|
// ref: https://github.com/ant-design/ant-design/issues/18774
|
2019-12-23 23:24:47 +08:00
|
|
|
if (!window.matchMedia) {
|
2019-12-23 18:33:08 +08:00
|
|
|
Object.defineProperty(global.window, 'matchMedia', {
|
2019-12-23 23:24:47 +08:00
|
|
|
value: jest.fn(query => ({
|
|
|
|
matches: query.includes('max-width'),
|
2020-05-24 23:52:25 +08:00
|
|
|
addListener: jest.fn(),
|
|
|
|
removeListener: jest.fn(),
|
2019-12-23 18:33:08 +08:00
|
|
|
})),
|
|
|
|
});
|
|
|
|
}
|
2020-09-18 16:53:18 +08:00
|
|
|
|
|
|
|
// Fix css-animation or rc-motion deps on these
|
|
|
|
// https://github.com/react-component/motion/blob/9c04ef1a210a4f3246c9becba6e33ea945e00669/src/util/motion.ts#L27-L35
|
|
|
|
// https://github.com/yiminghe/css-animation/blob/a5986d73fd7dfce75665337f39b91483d63a4c8c/src/Event.js#L44
|
|
|
|
window.AnimationEvent = window.AnimationEvent || (() => {});
|
|
|
|
window.TransitionEvent = window.TransitionEvent || (() => {});
|
2016-11-23 16:14:57 +08:00
|
|
|
}
|
2017-08-23 16:29:56 +08:00
|
|
|
|
2017-09-20 16:26:18 +08:00
|
|
|
const Enzyme = require('enzyme');
|
2017-11-06 17:34:14 +08:00
|
|
|
|
2019-07-03 20:14:39 +08:00
|
|
|
const Adapter = require('enzyme-adapter-react-16');
|
2017-09-20 16:26:18 +08:00
|
|
|
|
|
|
|
Enzyme.configure({ adapter: new Adapter() });
|
2020-04-15 12:44:35 +08:00
|
|
|
|
|
|
|
Object.assign(Enzyme.ReactWrapper.prototype, {
|
|
|
|
findObserver() {
|
|
|
|
return this.find('ResizeObserver');
|
|
|
|
},
|
|
|
|
triggerResize() {
|
|
|
|
const ob = this.findObserver();
|
|
|
|
ob.instance().onResize([{ target: ob.getDOMNode() }]);
|
|
|
|
},
|
|
|
|
});
|