diff --git a/packages/grafana-ui/src/components/DateTimePickers/TimeRangePicker.test.tsx b/packages/grafana-ui/src/components/DateTimePickers/TimeRangePicker.test.tsx index 0b2284e875f..386c79ec53a 100644 --- a/packages/grafana-ui/src/components/DateTimePickers/TimeRangePicker.test.tsx +++ b/packages/grafana-ui/src/components/DateTimePickers/TimeRangePicker.test.tsx @@ -18,6 +18,12 @@ const value: TimeRange = { raw: { from, to }, }; +const relativeValue: TimeRange = { + from: from.subtract(1, 'hour'), + to: to, + raw: { from: 'now-1h', to: 'now' }, +}; + describe('TimePicker', () => { it('renders buttons correctly', () => { render( @@ -34,6 +40,38 @@ describe('TimePicker', () => { expect(screen.getByLabelText(/Time range selected/i)).toBeInTheDocument(); }); + it('renders move buttons with relative range', () => { + render( + {}} + onChange={(value) => {}} + value={relativeValue} + onMoveBackward={() => {}} + onMoveForward={() => {}} + onZoom={() => {}} + /> + ); + + expect(screen.getByLabelText(/Move time range backwards/i)).toBeInTheDocument(); + expect(screen.getByLabelText(/Move time range forwards/i)).toBeInTheDocument(); + }); + + it('renders move buttons with absolute range', () => { + render( + {}} + onChange={(value) => {}} + value={value} + onMoveBackward={() => {}} + onMoveForward={() => {}} + onZoom={() => {}} + /> + ); + + expect(screen.getByLabelText(/Move time range backwards/i)).toBeInTheDocument(); + expect(screen.getByLabelText(/Move time range forwards/i)).toBeInTheDocument(); + }); + it('switches overlay content visibility when toolbar button is clicked twice', async () => { render( - {hasAbsolute && ( - - )} + - )} +