From a39aada80abbcc19b31e936ecb3903154b79f7f4 Mon Sep 17 00:00:00 2001 From: tangjinzhou <415800467@qq.com> Date: Sat, 19 May 2018 17:46:03 +0800 Subject: [PATCH] test: add card test --- components/card/__tests__/index.test.js | 41 +++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 components/card/__tests__/index.test.js diff --git a/components/card/__tests__/index.test.js b/components/card/__tests__/index.test.js new file mode 100644 index 000000000..eec6694c6 --- /dev/null +++ b/components/card/__tests__/index.test.js @@ -0,0 +1,41 @@ +import { mount } from '@vue/test-utils' +import Card from '../index' + +const testMethod = typeof window !== 'undefined' ? it : xit + +describe('Card', () => { + beforeAll(() => { + jest.useFakeTimers() + }) + + afterAll(() => { + jest.useRealTimers() + }) + + function fakeResizeWindowTo (wrapper, width) { + Object.defineProperties(wrapper.vm.$refs.cardContainerRef, { + offsetWidth: { + get () { return width }, + configurable: true, + }, + }) + window.resizeTo(width) + } + + testMethod('resize card will trigger different padding', () => { + const wrapper = mount(Card, { + propsData: 'xxx', + slots: { + default: 'xxx', + }, + }) + fakeResizeWindowTo(wrapper, 1000) + jest.runAllTimers() + wrapper.vm.$forceUpdate() + expect(wrapper.findAll('.ant-card-wider-padding').length).toBe(1) + fakeResizeWindowTo(wrapper, 800) + jest.runAllTimers() + wrapper.vm.$forceUpdate() + expect(wrapper.findAll('.ant-card-wider-padding').length).toBe(0) + }) +})