From d2f9d7f39b91b84089a483774e854c2611a1a6bc Mon Sep 17 00:00:00 2001 From: owensmallwood Date: Mon, 12 Dec 2022 15:52:49 -0600 Subject: [PATCH] Public Dashboards: Dont make annotations request when access token is falsey (#60202) dont make annotations request when access token is falsey --- .../PublicDashboardDataSource.test.ts | 28 +++++++++++++++++++ .../services/PublicDashboardDataSource.ts | 5 +++- 2 files changed, 32 insertions(+), 1 deletion(-) diff --git a/public/app/features/dashboard/services/PublicDashboardDataSource.test.ts b/public/app/features/dashboard/services/PublicDashboardDataSource.test.ts index c542b91f496..8b274aaae03 100644 --- a/public/app/features/dashboard/services/PublicDashboardDataSource.test.ts +++ b/public/app/features/dashboard/services/PublicDashboardDataSource.test.ts @@ -45,6 +45,34 @@ describe('PublicDashboardDatasource', () => { expect(annotation?.queryType).toEqual(GrafanaQueryType.Annotations); }); + test('will not fetch annotations when access token is falsey', async () => { + mockDatasourceRequest.mockReset(); + mockDatasourceRequest.mockReturnValue(Promise.resolve([])); + + const ds = new PublicDashboardDataSource('public'); + const panelId = 1; + const publicDashboardAccessToken = undefined; + + await ds.query({ + maxDataPoints: 10, + intervalMs: 5000, + targets: [ + { + refId: 'A', + datasource: { uid: GRAFANA_DATASOURCE_NAME, type: 'sample' }, + queryType: GrafanaQueryType.Annotations, + }, + ], + panelId, + publicDashboardAccessToken, + range: { from: new Date().toLocaleString(), to: new Date().toLocaleString() } as unknown as TimeRange, + } as DataQueryRequest); + + const mock = mockDatasourceRequest.mock; + + expect(mock.calls.length).toBe(0); + }); + test('fetches results from the pubdash annotations endpoint when it is an annotation query', async () => { mockDatasourceRequest.mockReset(); mockDatasourceRequest.mockReturnValue(Promise.resolve([])); diff --git a/public/app/features/dashboard/services/PublicDashboardDataSource.ts b/public/app/features/dashboard/services/PublicDashboardDataSource.ts index f9a09e89515..9f1696de4b3 100644 --- a/public/app/features/dashboard/services/PublicDashboardDataSource.ts +++ b/public/app/features/dashboard/services/PublicDashboardDataSource.ts @@ -130,7 +130,10 @@ export class PublicDashboardDataSource extends DataSourceApi