diff --git a/public/app/features/dashboard-scene/scene/PanelTimeRange.test.tsx b/public/app/features/dashboard-scene/scene/PanelTimeRange.test.tsx index f4172d626e0..7d8f9b4baa5 100644 --- a/public/app/features/dashboard-scene/scene/PanelTimeRange.test.tsx +++ b/public/app/features/dashboard-scene/scene/PanelTimeRange.test.tsx @@ -97,6 +97,20 @@ describe('PanelTimeRange', () => { expect(panelTime.state.from).toBe('now-12h'); expect(panelTime.state.to).toBe('now-2h'); }); + + it('should properly apply timeZone', () => { + const panelTime = new PanelTimeRange({ timeFrom: '2h' }); + + const panel = new SceneCanvasText({ text: 'Hello', $timeRange: panelTime }); + const scene = new SceneFlexLayout({ + $timeRange: new SceneTimeRange({ from: 'now-6h', to: 'now', timeZone: 'utc' }), + children: [new SceneFlexItem({ body: panel })], + }); + activateFullSceneTree(scene); + + expect(panelTime.state.value.from.format('Z')).toBe('+00:00'); // UTC + expect(panelTime.state.value.to.format('Z')).toBe('+00:00'); // UTC + }); }); function buildAndActivateSceneFor(panelTime: PanelTimeRange) { diff --git a/public/app/features/dashboard-scene/scene/PanelTimeRange.tsx b/public/app/features/dashboard-scene/scene/PanelTimeRange.tsx index d1f74707658..61bcfe3b353 100644 --- a/public/app/features/dashboard-scene/scene/PanelTimeRange.tsx +++ b/public/app/features/dashboard-scene/scene/PanelTimeRange.tsx @@ -81,10 +81,11 @@ export class PanelTimeRange extends SceneTimeRangeTransformerBase