diff --git a/src/PickerPanel.tsx b/src/PickerPanel.tsx index d0e5119ab..ea36b4c72 100644 --- a/src/PickerPanel.tsx +++ b/src/PickerPanel.tsx @@ -179,8 +179,8 @@ function PickerPanel(props: PickerPanelProps) { isSecondStepValid, `\`secondStep\` ${secondStep} is invalid. It should be a factor of 60.`, ); - warning(!!dateRender, `'dateRender' is deprecated. Please use 'cellRender' instead.`); - warning(!!monthCellRender, `'monthCellRender' is deprecated. Please use 'cellRender' instead.`); + warning(!dateRender, `'dateRender' is deprecated. Please use 'cellRender' instead.`); + warning(!monthCellRender, `'monthCellRender' is deprecated. Please use 'cellRender' instead.`); } // ============================ State ============================= diff --git a/src/RangePicker.tsx b/src/RangePicker.tsx index 02b1b6261..fff3cfa91 100644 --- a/src/RangePicker.tsx +++ b/src/RangePicker.tsx @@ -778,8 +778,8 @@ function InnerRangePicker(props: RangePickerProps) { '`disabled` should not set with empty `value`. You should set `allowEmpty` or `value` instead.', ); } - warning(!!dateRender, `'dateRender' is deprecated. Please use 'cellRender' instead.`); - warning(!!monthCellRender, `'monthCellRender' is deprecated. Please use 'cellRender' instead.`); + warning(!dateRender, `'dateRender' is deprecated. Please use 'cellRender' instead.`); + warning(!monthCellRender, `'monthCellRender' is deprecated. Please use 'cellRender' instead.`); } // ============================ Private ============================ diff --git a/tests/panel.spec.tsx b/tests/panel.spec.tsx index df537281f..a48b29b87 100644 --- a/tests/panel.spec.tsx +++ b/tests/panel.spec.tsx @@ -1,10 +1,10 @@ -import type { PanelMode } from '../src/interface'; import { fireEvent, render } from '@testing-library/react'; import type { Moment } from 'moment'; import moment from 'moment'; import { spyElementPrototypes } from 'rc-util/lib/test/domHook'; import { resetWarned } from 'rc-util/lib/warning'; import React from 'react'; +import type { PanelMode } from '../src/interface'; import enUS from '../src/locale/en_US'; import zhCN from '../src/locale/zh_CN'; import { @@ -475,7 +475,6 @@ describe('Picker.Panel', () => { errSpy.mockRestore(); }); - it('should render correctly in rtl', () => { const { container } = render(); expect(container).toMatchSnapshot(); @@ -568,7 +567,15 @@ describe('Picker.Panel', () => { }); }); - const supportCellRenderPicker: PanelMode[] = ['year', 'month', 'date', 'quarter', 'week', 'time', 'decade']; + const supportCellRenderPicker: PanelMode[] = [ + 'year', + 'month', + 'date', + 'quarter', + 'week', + 'time', + 'decade', + ]; const getCurText = (picker: PanelMode, current: Moment | number) => { switch (picker) { @@ -618,6 +625,28 @@ describe('Picker.Panel', () => { expect(container.querySelector(`.rc-picker-${picker}-panel`)).toBeTruthy(); expect(container).toMatchSnapshot(); }); + + it('warning with dateRender and monthCellRender', () => { + resetWarned(); + const errSpy = jest.spyOn(console, 'error').mockImplementation(() => {}); + + render( + ( +
{getCurText(picker, current)}
+ )} + monthCellRender={(current) => ( +
{getCurText(picker, current)}
+ )} + />, + ); + expect(errSpy).toHaveBeenCalledWith("Warning: 'dateRender' is deprecated. Please use 'cellRender' instead."); + expect(errSpy).toHaveBeenCalledWith("Warning: 'monthCellRender' is deprecated. Please use 'cellRender' instead."); + + errSpy.mockRestore(); + }); + it(`append cell with cellRender in ${picker}`, () => { const App = () => (