patch test for selection box

This commit is contained in:
AllenFang
2018-06-02 15:20:40 +08:00
parent a7b3690a7c
commit c2044fe8b5
2 changed files with 61 additions and 0 deletions

View File

@@ -193,5 +193,36 @@ describe('<SelectionCell />', () => {
expect(wrapper.find('input').get(0).props.disabled).toBeTruthy();
});
});
describe('when selectionRenderer prop is defined', () => {
const DummySelection = () => <div className="dummy" />;
const selectionRenderer = jest.fn().mockReturnValue(<DummySelection />);
beforeEach(() => {
selectionRenderer.mockClear();
wrapper = shallow(
<SelectionCell
rowKey={ 1 }
mode={ mode }
rowIndex={ rowIndex }
selected={ selected }
selectionRenderer={ selectionRenderer }
/>
);
});
it('should render component correctly', () => {
expect(wrapper.find(DummySelection)).toHaveLength(1);
});
it('should call props.selectionRenderer correctly', () => {
expect(selectionRenderer).toHaveBeenCalledTimes(1);
expect(selectionRenderer).toHaveBeenCalledWith({
mode,
checked: selected,
disabled: wrapper.prop('disabled')
});
});
});
});
});

View File

@@ -126,6 +126,36 @@ describe('<SelectionHeaderCell />', () => {
expect(wrapper.find(CheckBox).get(0).props.indeterminate).toBe(indeterminate);
});
});
describe('when props.selectionHeaderRenderer is defined', () => {
const checkedStatus = Const.CHECKBOX_STATUS_CHECKED;
const DummySelection = () => <div className="dummy" />;
const selectionHeaderRenderer = jest.fn().mockReturnValue(<DummySelection />);
beforeEach(() => {
selectionHeaderRenderer.mockClear();
wrapper = shallow(
<SelectionHeaderCell
mode="checkbox"
checkedStatus={ checkedStatus }
selectionHeaderRenderer={ selectionHeaderRenderer }
/>
);
});
it('should render correctly', () => {
expect(wrapper.find(DummySelection)).toHaveLength(1);
});
it('should call props.selectionHeaderRenderer correctly', () => {
expect(selectionHeaderRenderer).toHaveBeenCalledTimes(1);
expect(selectionHeaderRenderer).toHaveBeenCalledWith({
mode: 'checkbox',
checked: checkedStatus === Const.CHECKBOX_STATUS_CHECKED,
indeterminate: checkedStatus === Const.CHECKBOX_STATUS_INDETERMINATE
});
});
});
});
});