42 lines
		
	
	
		
			1011 B
		
	
	
	
		
			JavaScript
		
	
	
			
		
		
	
	
			42 lines
		
	
	
		
			1011 B
		
	
	
	
		
			JavaScript
		
	
	
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)
 | 
						|
  })
 | 
						|
})
 |