diff --git a/frontend/packages/data-portal/e2e/browseDatasetFilters.test.ts b/frontend/packages/data-portal/e2e/browseDatasetFilters.test.ts index 642d20dc9..2293dd99b 100644 --- a/frontend/packages/data-portal/e2e/browseDatasetFilters.test.ts +++ b/frontend/packages/data-portal/e2e/browseDatasetFilters.test.ts @@ -5,11 +5,12 @@ import { FiltersPage } from 'e2e/pageObjects/filters/filtersPage' import { serializeAvailableFiles } from 'e2e/pageObjects/filters/utils' import { QueryParams } from 'app/constants/query' +import { ObjectShapeType } from 'app/types/shapeTypes' import { getPrefixedId } from 'app/utils/idPrefixes' import { getApolloClient } from './apollo' import { BROWSE_DATASETS_URL, E2E_CONFIG, translations } from './constants' -import { onlyRunIfEnabled } from './utils' +import { getObjectShapeTypeLabel, onlyRunIfEnabled } from './utils' test.describe('Browse datasets page filters', () => { let client: ApolloClient @@ -1156,17 +1157,16 @@ test.describe('Browse datasets page filters', () => { getPrefixedId(E2E_CONFIG.depositionId, QueryParams.DepositionId), ) - // TODO: (kne42) uncomment when hooked up to backend - // await filtersActor.expectDataAndDatasetsTableToMatch({ - // client, - // url: BROWSE_DATASETS_URL, - // queryParamsList: [ - // { - // queryParamKey: QueryParams.DepositionId, - // queryParamValue: E2E_CONFIG.depositionId, - // }, - // ], - // }) + await filtersActor.expectDataAndDatasetsTableToMatch({ + client, + url: BROWSE_DATASETS_URL, + queryParamsList: [ + { + queryParamKey: QueryParams.DepositionId, + queryParamValue: E2E_CONFIG.depositionId, + }, + ], + }) }) test('should filter when opening URL', async () => { await filtersActor.goToFilteredUrl({ @@ -1183,17 +1183,16 @@ test.describe('Browse datasets page filters', () => { getPrefixedId(E2E_CONFIG.depositionId, QueryParams.DepositionId), ) - // TODO: (kne42) uncomment when hooked up to backend - // await filtersActor.expectDataAndDatasetsTableToMatch({ - // client, - // url: BROWSE_DATASETS_URL, - // queryParamsList: [ - // { - // queryParamKey: QueryParams.DepositionId, - // queryParamValue: E2E_CONFIG.depositionId, - // }, - // ], - // }) + await filtersActor.expectDataAndDatasetsTableToMatch({ + client, + url: BROWSE_DATASETS_URL, + queryParamsList: [ + { + queryParamKey: QueryParams.DepositionId, + queryParamValue: E2E_CONFIG.depositionId, + }, + ], + }) }) test('should disable filter when deselecting', async () => { await filtersActor.goToFilteredUrl({ @@ -2485,7 +2484,9 @@ test.describe('Browse datasets page filters', () => { await filtersActor.addSingleSelectFilter({ label: translations.objectShapeType, - value: E2E_CONFIG.objectShapeType, + value: getObjectShapeTypeLabel( + E2E_CONFIG.objectShapeType as ObjectShapeType, + ), }) await filtersActor.expectUrlQueryParamsToBeCorrect({ @@ -2542,7 +2543,9 @@ test.describe('Browse datasets page filters', () => { ], }) - await filtersPage.removeFilterOption(E2E_CONFIG.objectShapeType) + await filtersPage.removeFilterOption( + getObjectShapeTypeLabel(E2E_CONFIG.objectShapeType as ObjectShapeType), + ) await filtersActor.expectUrlQueryParamsToBeCorrect({ url: BROWSE_DATASETS_URL, diff --git a/frontend/packages/data-portal/e2e/singleDatasetFilters.test.ts b/frontend/packages/data-portal/e2e/singleDatasetFilters.test.ts index ab079b18d..91c34e613 100644 --- a/frontend/packages/data-portal/e2e/singleDatasetFilters.test.ts +++ b/frontend/packages/data-portal/e2e/singleDatasetFilters.test.ts @@ -4,11 +4,12 @@ import { FiltersActor } from 'e2e/pageObjects/filters/filtersActor' import { FiltersPage } from 'e2e/pageObjects/filters/filtersPage' import { QueryParams } from 'app/constants/query' +import { ObjectShapeType } from 'app/types/shapeTypes' import { getPrefixedId } from 'app/utils/idPrefixes' import { getApolloClient } from './apollo' import { E2E_CONFIG, SINGLE_DATASET_URL, translations } from './constants' -import { onlyRunIfEnabled } from './utils' +import { getObjectShapeTypeLabel, onlyRunIfEnabled } from './utils' test.describe('Single dataset page filters', () => { let client: ApolloClient @@ -137,18 +138,17 @@ test.describe('Single dataset page filters', () => { getPrefixedId(E2E_CONFIG.depositionId, QueryParams.DepositionId), ) - // TODO: (kne42) uncomment this when hooked up to backend - // await filtersActor.expectDataAndRunsTableToMatch({ - // client, - // id: +E2E_CONFIG.datasetId, - // url: SINGLE_DATASET_URL, - // queryParamsList: [ - // { - // queryParamKey: QueryParams.DepositionId, - // queryParamValue: E2E_CONFIG.depositionId, - // }, - // ], - // }) + await filtersActor.expectDataAndRunsTableToMatch({ + client, + id: +E2E_CONFIG.datasetId, + url: SINGLE_DATASET_URL, + queryParamsList: [ + { + queryParamKey: QueryParams.DepositionId, + queryParamValue: E2E_CONFIG.depositionId, + }, + ], + }) }) test('should filter by deposition ID when opening URL', async () => { await filtersActor.goToFilteredUrl({ @@ -165,18 +165,17 @@ test.describe('Single dataset page filters', () => { getPrefixedId(E2E_CONFIG.depositionId, QueryParams.DepositionId), ) - // TODO: (kne42) uncomment this when hooked up to backend - // await filtersActor.expectDataAndRunsTableToMatch({ - // client, - // id: +E2E_CONFIG.datasetId, - // url: SINGLE_DATASET_URL, - // queryParamsList: [ - // { - // queryParamKey: QueryParams.DepositionId, - // queryParamValue: E2E_CONFIG.depositionId, - // }, - // ], - // }) + await filtersActor.expectDataAndRunsTableToMatch({ + client, + id: +E2E_CONFIG.datasetId, + url: SINGLE_DATASET_URL, + queryParamsList: [ + { + queryParamKey: QueryParams.DepositionId, + queryParamValue: E2E_CONFIG.depositionId, + }, + ], + }) }) test('should remove filter when deselecting', async () => { await filtersActor.goToFilteredUrl({ @@ -371,7 +370,9 @@ test.describe('Single dataset page filters', () => { ], }) - await filtersPage.removeFilterOption(E2E_CONFIG.objectShapeType) + await filtersPage.removeFilterOption( + getObjectShapeTypeLabel(E2E_CONFIG.objectShapeType as ObjectShapeType), + ) await filtersActor.expectUrlQueryParamsToBeCorrect({ url: SINGLE_DATASET_URL, diff --git a/frontend/packages/data-portal/e2e/singleRunFilters.test.ts b/frontend/packages/data-portal/e2e/singleRunFilters.test.ts index a1866db96..e0e7e81be 100644 --- a/frontend/packages/data-portal/e2e/singleRunFilters.test.ts +++ b/frontend/packages/data-portal/e2e/singleRunFilters.test.ts @@ -4,11 +4,12 @@ import { FiltersActor } from 'e2e/pageObjects/filters/filtersActor' import { FiltersPage } from 'e2e/pageObjects/filters/filtersPage' import { QueryParams } from 'app/constants/query' +import { ObjectShapeType } from 'app/types/shapeTypes' import { getPrefixedId } from 'app/utils/idPrefixes' import { getApolloClient } from './apollo' import { E2E_CONFIG, SINGLE_RUN_URL, translations } from './constants' -import { onlyRunIfEnabled } from './utils' +import { getObjectShapeTypeLabel, onlyRunIfEnabled } from './utils' test.describe('Single run page filters', () => { let client: ApolloClient @@ -242,18 +243,17 @@ test.describe('Single run page filters', () => { getPrefixedId(E2E_CONFIG.depositionId, QueryParams.DepositionId), ) - // TODO: (kne42) uncomment when hooked up to backend - // await filtersActor.expectDataAndAnnotationsTableToMatch({ - // client, - // id: +E2E_CONFIG.runId, - // url: SINGLE_RUN_URL, - // queryParamsList: [ - // { - // queryParamKey: QueryParams.DepositionId, - // queryParamValue: E2E_CONFIG.depositionId, - // }, - // ], - // }) + await filtersActor.expectDataAndAnnotationsTableToMatch({ + client, + id: +E2E_CONFIG.runId, + url: SINGLE_RUN_URL, + queryParamsList: [ + { + queryParamKey: QueryParams.DepositionId, + queryParamValue: E2E_CONFIG.depositionId, + }, + ], + }) }) test('should filter when opening URL', async () => { await filtersActor.goToFilteredUrl({ @@ -270,18 +270,17 @@ test.describe('Single run page filters', () => { getPrefixedId(E2E_CONFIG.depositionId, QueryParams.DepositionId), ) - // TODO: (kne42) uncomment when hooked up to backend - // await filtersActor.expectDataAndAnnotationsTableToMatch({ - // client, - // id: +E2E_CONFIG.runId, - // url: SINGLE_RUN_URL, - // queryParamsList: [ - // { - // queryParamKey: QueryParams.DepositionId, - // queryParamValue: E2E_CONFIG.depositionId, - // }, - // ], - // }) + await filtersActor.expectDataAndAnnotationsTableToMatch({ + client, + id: +E2E_CONFIG.runId, + url: SINGLE_RUN_URL, + queryParamsList: [ + { + queryParamKey: QueryParams.DepositionId, + queryParamValue: E2E_CONFIG.depositionId, + }, + ], + }) }) test('should remove filter when deselecting', async () => { await filtersActor.goToFilteredUrl({ @@ -308,18 +307,12 @@ test.describe('Single run page filters', () => { ], }) - // TODO: (kne42) uncomment when hooked up to backend - // await filtersActor.expectDataAndAnnotationsTableToMatch({ - // client, - // id: +E2E_CONFIG.runId, - // url: SINGLE_RUN_URL, - // queryParamsList: [ - // { - // queryParamKey: QueryParams.DepositionId, - // queryParamValue: E2E_CONFIG.depositionId, - // }, - // ], - // }) + await filtersActor.expectDataAndAnnotationsTableToMatch({ + client, + id: +E2E_CONFIG.runId, + url: SINGLE_RUN_URL, + queryParamsList: [], + }) }) }) test.describe('Object Name filter', () => { @@ -517,7 +510,9 @@ test.describe('Single run page filters', () => { await filtersActor.addSingleSelectFilter({ label: translations.objectShapeType, - value: E2E_CONFIG.objectShapeType, + value: getObjectShapeTypeLabel( + E2E_CONFIG.objectShapeType as ObjectShapeType, + ), }) await filtersActor.expectUrlQueryParamsToBeCorrect({ @@ -578,7 +573,9 @@ test.describe('Single run page filters', () => { ], }) - await filtersPage.removeFilterOption(E2E_CONFIG.objectShapeType) + await filtersPage.removeFilterOption( + getObjectShapeTypeLabel(E2E_CONFIG.objectShapeType as ObjectShapeType), + ) await filtersActor.expectUrlQueryParamsToBeCorrect({ url: SINGLE_RUN_URL, diff --git a/frontend/packages/data-portal/e2e/utils.ts b/frontend/packages/data-portal/e2e/utils.ts index 0f4b8dc1e..19feec48b 100644 --- a/frontend/packages/data-portal/e2e/utils.ts +++ b/frontend/packages/data-portal/e2e/utils.ts @@ -1,7 +1,11 @@ import { test } from '@playwright/test' +import { shapeTypeToI18nKey } from 'app/constants/objectShapeTypes' +import { ObjectShapeType } from 'app/types/shapeTypes' import { FeatureFlagKey, getFeatureFlag } from 'app/utils/featureFlags' +import { translations } from './constants' + export function onlyRunIfEnabled(key: FeatureFlagKey) { const isEnabled = getFeatureFlag({ key, @@ -11,3 +15,13 @@ export function onlyRunIfEnabled(key: FeatureFlagKey) { // eslint-disable-next-line playwright/no-skipped-test test.skip(!isEnabled, `Skipping because feature ${key} is disabled`) } + +type ObjectShapeTranslationType = Pick< + typeof translations, + 'instanceSegmentation' | 'orientedPoint' | 'point' | 'segmentationMask' +> + +export function getObjectShapeTypeLabel(shapeType: ObjectShapeType): string { + const key = shapeTypeToI18nKey.get(shapeType) + return key ? translations[key as keyof ObjectShapeTranslationType] : '' +}