From db131f33123c5c704fd8d073e71d1cc216c95e04 Mon Sep 17 00:00:00 2001 From: Josh Hunt Date: Tue, 27 Feb 2024 12:52:21 +0000 Subject: [PATCH] E2C: Refactor api with dataWithMockDelay helper: (#83509) * E2C: Refactor api with dataWithMockDelay helper: * update codeowners * owner comment --- .github/CODEOWNERS | 4 +++ .../features/admin/migrate-to-cloud/api.ts | 35 +++++++++---------- 2 files changed, 21 insertions(+), 18 deletions(-) diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index 8c5bc80e193..b35e441ffbe 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -381,6 +381,10 @@ playwright.config.ts @grafana/plugins-platform-frontend /public/app/core/components/TimelineChart/ @grafana/dataviz-squad /public/app/features/all.ts @grafana/grafana-frontend-platform /public/app/features/admin/ @grafana/identity-access-team + +# Temp owners until Enterprise team takes over +/public/app/features/admin/migrate-to-cloud @grafana/grafana-frontend-platform + /public/app/features/auth-config/ @grafana/identity-access-team /public/app/features/annotations/ @grafana/dashboards-squad /public/app/features/api-keys/ @grafana/identity-access-team diff --git a/public/app/features/admin/migrate-to-cloud/api.ts b/public/app/features/admin/migrate-to-cloud/api.ts index b144fce904c..405334ac9a7 100644 --- a/public/app/features/admin/migrate-to-cloud/api.ts +++ b/public/app/features/admin/migrate-to-cloud/api.ts @@ -40,6 +40,14 @@ const MOCK_DELAY_MS = 1000; const MOCK_TOKEN = 'TODO_thisWillBeABigLongToken'; let HAS_MIGRATION_TOKEN = false; +function dataWithMockDelay(data: T): Promise<{ data: T }> { + return new Promise((resolve) => { + setTimeout(() => { + resolve({ data }); + }, MOCK_DELAY_MS); + }); +} + export const migrateToCloudAPI = createApi({ tagTypes: ['migrationToken'], reducerPath: 'migrateToCloudAPI', @@ -47,38 +55,29 @@ export const migrateToCloudAPI = createApi({ endpoints: (builder) => ({ // TODO :) getStatus: builder.query({ - queryFn: () => ({ data: { enabled: false } }), + queryFn: () => dataWithMockDelay({ enabled: true }), }), + createMigrationToken: builder.mutation({ invalidatesTags: ['migrationToken'], queryFn: async () => { - return new Promise((resolve) => { - setTimeout(() => { - HAS_MIGRATION_TOKEN = true; - resolve({ data: { token: MOCK_TOKEN } }); - }, MOCK_DELAY_MS); - }); + HAS_MIGRATION_TOKEN = true; + return dataWithMockDelay({ token: MOCK_TOKEN }); }, }), + deleteMigrationToken: builder.mutation({ invalidatesTags: ['migrationToken'], queryFn: async () => { - return new Promise((resolve) => { - setTimeout(() => { - HAS_MIGRATION_TOKEN = false; - resolve({ data: undefined }); - }, MOCK_DELAY_MS); - }); + HAS_MIGRATION_TOKEN = false; + return dataWithMockDelay(undefined); }, }), + hasMigrationToken: builder.query({ providesTags: ['migrationToken'], queryFn: async () => { - return new Promise((resolve) => { - setTimeout(() => { - resolve({ data: HAS_MIGRATION_TOKEN }); - }, MOCK_DELAY_MS); - }); + return dataWithMockDelay(HAS_MIGRATION_TOKEN); }, }), }),