import React from 'react'; import { mount } from 'enzyme'; import Card from '../index'; import Button from '../../button/index'; const testMethod = typeof window !== 'undefined' ? it : xit; describe('Card', () => { beforeAll(() => { jest.useFakeTimers(); }); afterAll(() => { jest.useRealTimers(); }); function fakeResizeWindowTo(wrapper, width) { Object.defineProperties(wrapper.instance().container, { offsetWidth: { get() { return width; }, configurable: true, }, }); window.resizeTo(width); } testMethod('resize card will trigger different padding', () => { const wrapper = mount(xxx); fakeResizeWindowTo(wrapper, 1000); jest.runAllTimers(); wrapper.update(); expect(wrapper.find('.ant-card-wider-padding').length).toBe(1); fakeResizeWindowTo(wrapper, 800); jest.runAllTimers(); wrapper.update(); expect(wrapper.find('.ant-card-wider-padding').length).toBe(0); }); it('should still have padding when card which set padding to 0 is loading', () => { const wrapper = mount( xxx , ); expect(wrapper.render()).toMatchSnapshot(); }); it('title should be vertically aligned', () => { const wrapper = mount( Button} style={{ width: 300 }}>

Card content

, ); expect(wrapper.render()).toMatchSnapshot(); }); it('warning', () => { const warnSpy = jest.spyOn(console, 'error').mockImplementation(() => {}); mount(xxx); expect(warnSpy).toBeCalledWith( 'Warning: [antd: Card] `noHovering` is deprecated, you can remove it safely or use `hoverable` instead.', ); mount(xxx); expect(warnSpy).toBeCalledWith( 'Warning: [antd: Card] `noHovering={false}` is deprecated, use `hoverable` instead.', ); warnSpy.mockRestore(); }); it('unmount', () => { const wrapper = mount(xxx); const removeResizeEventSpy = jest.spyOn(wrapper.instance().resizeEvent, 'remove'); wrapper.unmount(); expect(removeResizeEventSpy).toHaveBeenCalled(); }); it('onTabChange should work', () => { const onTabChange = key => expect(key).toBe('test'); const wrapper = mount(xxx).instance(); wrapper.onTabChange('test'); }); it('getAction should work', () => { const wrapper = mount(xxx).instance(); expect(wrapper.getAction([])).toBe(null); }); it('getCompatibleHoverable should work', () => { const wrapper = mount(xxx).instance(); expect(wrapper.getCompatibleHoverable()).toBe(true); }); });