ant-design/components/date-picker/__tests__/WeekPicker.test.js
afc163 3f1be96866
Merge branch 'master' into feature
* master: (23 commits)
   fix snapshots
  Add docs for the List rowKey prop
  💄 don't reset font-family in each component
  💄 chore card less variable
  Remove classNames from custom-typing file
  add collapsed faq ref: #13953
  feat: support define card border radius
  Fix dateRender not supported at WeekPicker
  📝 Add links in Home Page
  📝 Fix site responsive interaction, close #13954
  💄 chore Steps[labelPlacement="vertical"] style
   fix warning in test case
  📝 update tech antfin cases
  🐛 site menu open bug
  🐛 fix site defaultOpenKeys
  Correct docs
  💄 chore button code style
  fix spaces in curly brackets
  fix two more code style issues
  Fix method argument name
  ...
2018-12-28 12:11:18 +08:00

75 lines
2.0 KiB
JavaScript

import React from 'react';
import { mount, render } from 'enzyme';
import { setMockDate, resetMockDate } from '../../../tests/utils';
import DatePicker from '..';
import focusTest from '../../../tests/shared/focusTest';
import { openPanel } from './utils';
const { WeekPicker } = DatePicker;
describe('WeekPicker', () => {
beforeEach(() => {
setMockDate();
});
afterEach(() => {
resetMockDate();
});
focusTest(WeekPicker);
it('should support style prop', () => {
const wrapper = mount(<WeekPicker style={{ width: 400 }} />);
expect(wrapper.render()).toMatchSnapshot();
});
it('extra footer works', () => {
const wrapper = mount(
<WeekPicker renderExtraFooter={mode => <span className="extra-node">{mode}</span>} />,
);
openPanel(wrapper);
let extraNode = wrapper.find('.extra-node');
expect(extraNode.length).toBe(1);
expect(extraNode.text()).toBe('date');
wrapper
.find('.ant-calendar-month-select')
.hostNodes()
.simulate('click');
extraNode = wrapper.find('.ant-calendar-month-panel .extra-node');
expect(extraNode.length).toBe(1);
expect(extraNode.text()).toBe('month');
wrapper
.find('.ant-calendar-year-select')
.hostNodes()
.simulate('click');
extraNode = wrapper.find('.ant-calendar-year-panel .extra-node');
expect(extraNode.length).toBe(1);
expect(extraNode.text()).toBe('year');
wrapper
.find('.ant-calendar-year-panel-decade-select')
.hostNodes()
.simulate('click');
extraNode = wrapper.find('.ant-calendar-decade-panel .extra-node');
expect(extraNode.length).toBe(1);
expect(extraNode.text()).toBe('decade');
});
it('should support dateRender', () => {
const wrapper = mount(
<WeekPicker open dateRender={current => <span>{current.format('YYYY-MM-DD')}</span>} />,
);
expect(
render(
wrapper
.find('Trigger')
.instance()
.getComponent(),
),
).toMatchSnapshot();
});
});