Skip to content

Commit

Permalink
test: added anvil-catalog filter search test (#4125) (#4135)
Browse files Browse the repository at this point in the history
* test: added anvil-catalog filter search test (#4125)

* test: bugfix in anvilcatalog filters test, updated testReadme (#4125)

* test: added comments and tsdocs to filter search tests (#3342)

* test: renamed files to match new test standard (#4135)
  • Loading branch information
jpaten authored Sep 17, 2024
1 parent fb64862 commit 6eb4259
Show file tree
Hide file tree
Showing 6 changed files with 253 additions and 38 deletions.
74 changes: 74 additions & 0 deletions explorer/e2e/anvil-catalog/anvilcatalog-filters.spec.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
import { test } from "@playwright/test";
import {
testDeselectFiltersThroughSearchBar,
testSelectFiltersThroughSearchBar,
} from "../testFunctions";
import {
ANVIL_CATALOG_FILTERS,
ANVIL_CATALOG_TABS,
CONSENT_CODE_INDEX,
DBGAP_ID_INDEX,
TERRA_WORKSPACE_INDEX,
} from "./anvilcatalog-tabs";

const filterList = [CONSENT_CODE_INDEX, DBGAP_ID_INDEX, TERRA_WORKSPACE_INDEX];

test('Check that selecting filters through the "Search all Filters" textbox works correctly on the Consortia tab', async ({
page,
}) => {
await testSelectFiltersThroughSearchBar(
page,
ANVIL_CATALOG_TABS.CONSORTIA,
filterList.map((i: number) => ANVIL_CATALOG_FILTERS[i])
);
});

test('Check that selecting filters through the "Search all Filters" textbox works correctly on the Studies tab', async ({
page,
}) => {
await testSelectFiltersThroughSearchBar(
page,
ANVIL_CATALOG_TABS.STUDIES,
filterList.map((i: number) => ANVIL_CATALOG_FILTERS[i])
);
});

test('Check that selecting filters through the "Search all Filters" textbox works correctly on the Workspaces tab', async ({
page,
}) => {
await testSelectFiltersThroughSearchBar(
page,
ANVIL_CATALOG_TABS.WORKSPACES,
filterList.map((i: number) => ANVIL_CATALOG_FILTERS[i])
);
});

test('Check that deselecting filters through the "Search all Filters" textbox works correctly on the Consortia tab', async ({
page,
}) => {
await testDeselectFiltersThroughSearchBar(
page,
ANVIL_CATALOG_TABS.CONSORTIA,
filterList.map((i: number) => ANVIL_CATALOG_FILTERS[i])
);
});

test('Check that deselecting filters through the "Search all Filters" textbox works correctly on the Studies tab', async ({
page,
}) => {
await testDeselectFiltersThroughSearchBar(
page,
ANVIL_CATALOG_TABS.STUDIES,
filterList.map((i: number) => ANVIL_CATALOG_FILTERS[i])
);
});

test('Check that deselecting filters through the "Search all Filters" textbox works correctly on the Workspaces tab', async ({
page,
}) => {
await testDeselectFiltersThroughSearchBar(
page,
ANVIL_CATALOG_TABS.WORKSPACES,
filterList.map((i: number) => ANVIL_CATALOG_FILTERS[i])
);
});
24 changes: 24 additions & 0 deletions explorer/e2e/anvil-catalog/anvilcatalog-tabs.ts
Original file line number Diff line number Diff line change
Expand Up @@ -9,24 +9,48 @@ import {
ANVIL_CATALOG_WORKSPACES_SELECTABLE_COLUMNS_BY_NAME,
} from "./constants";

const ANVIL_CATALOG_SEARCH_FILTERS_PLACEHOLDER_TEXT = "Search all filters...";
export const ANVIL_CATALOG_FILTERS = [
"Consent Code",
"Consortium",
"Data Type",
"dbGap Id",
"Disease (indication)",
"Study Design",
"Study",
"Terra Workspace Name",
];

export const CONSENT_CODE_INDEX = 0;
export const CONSORTIUM_INDEX = 1;
export const DATA_TYPE_INDEX = 2;
export const DBGAP_ID_INDEX = 3;
export const DISEASE_INDICATION_INDEX = 4;
export const STUDY_DESIGN_INDEX = 5;
export const STUDY_INDEX = 6;
export const TERRA_WORKSPACE_INDEX = 7;

export const ANVIL_CATALOG_TABS: AnvilCatalogTabCollection = {
CONSORTIA: {
emptyFirstColumn: false,
preselectedColumns: ANVIL_CATALOG_CONSORTIA_PRESELECTED_COLUMNS_BY_NAME,
searchFiltersPlaceholderText: ANVIL_CATALOG_SEARCH_FILTERS_PLACEHOLDER_TEXT,
selectableColumns: ANVIL_CATALOG_CONSORTIA_SELECTABLE_COLUMNS_BY_NAME,
tabName: "Consortia",
url: "/data/consortia",
},
STUDIES: {
emptyFirstColumn: false,
preselectedColumns: ANVIL_CATALOG_STUDIES_PRESELECTED_COLUMNS_BY_NAME,
searchFiltersPlaceholderText: ANVIL_CATALOG_SEARCH_FILTERS_PLACEHOLDER_TEXT,
selectableColumns: ANVIL_CATALOG_STUDIES_SELECTABLE_COLUMNS_BY_NAME,
tabName: "Studies",
url: "/data/studies",
},
WORKSPACES: {
emptyFirstColumn: false,
preselectedColumns: ANVIL_CATALOG_WORKSPACES_PRESELECTED_COLUMNS_BY_NAME,
searchFiltersPlaceholderText: ANVIL_CATALOG_SEARCH_FILTERS_PLACEHOLDER_TEXT,
selectableColumns: ANVIL_CATALOG_WORKSPACES_SELECTABLE_COLUMNS_BY_NAME,
tabName: "Workspaces",
url: "/data/workspaces",
Expand Down
7 changes: 7 additions & 0 deletions explorer/e2e/anvil/anvil-tabs.ts
Original file line number Diff line number Diff line change
Expand Up @@ -43,11 +43,14 @@ export const ORGANISM_TYPE_INDEX = 8;
export const PHENOTYPIC_SEX_INDEX = 9;
export const REPORTED_ETHNICITY_INDEX = 10;

const ANVIL_CMG_SEARCH_FILTERS_PLACEHOLDER_TEXT = "Search all filters...";

export const ANVIL_TABS: AnvilCMGTabCollection = {
ACTIVITIES: {
emptyFirstColumn: false,
maxPages: 25,
preselectedColumns: ANVIL_ACTIVITIES_PRESELECTED_COLUMNS_BY_NAME,
searchFiltersPlaceholderText: ANVIL_CMG_SEARCH_FILTERS_PLACEHOLDER_TEXT,
selectableColumns: ANVIL_ACTIVITIES_SELECTABLE_COLUMNS_BY_NAME,
tabName: "Activities",
url: "/activities",
Expand All @@ -56,6 +59,7 @@ export const ANVIL_TABS: AnvilCMGTabCollection = {
emptyFirstColumn: false,
maxPages: 25,
preselectedColumns: ANVIL_BIOSAMPLES_PRESELECTED_COLUMNS_BY_NAME,
searchFiltersPlaceholderText: ANVIL_CMG_SEARCH_FILTERS_PLACEHOLDER_TEXT,
selectableColumns: ANVIL_BIOSAMPLES_SELECTABLE_COLUMNS_BY_NAME,
tabName: "BioSamples",
url: "/biosamples",
Expand Down Expand Up @@ -130,6 +134,7 @@ export const ANVIL_TABS: AnvilCMGTabCollection = {
emptyFirstColumn: false,
maxPages: 25,
preselectedColumns: ANVIL_DATASETS_PRESELECTED_COLUMNS_BY_NAME,
searchFiltersPlaceholderText: ANVIL_CMG_SEARCH_FILTERS_PLACEHOLDER_TEXT,
selectableColumns: ANVIL_DATASETS_SELECTABLE_COLUMNS_BY_NAME,
tabName: "Datasets",
url: "/datasets",
Expand All @@ -138,6 +143,7 @@ export const ANVIL_TABS: AnvilCMGTabCollection = {
emptyFirstColumn: false,
maxPages: 25,
preselectedColumns: ANVIL_DONORS_PRESELECTED_COLUMNS_BY_NAME,
searchFiltersPlaceholderText: ANVIL_CMG_SEARCH_FILTERS_PLACEHOLDER_TEXT,
selectableColumns: ANVIL_DONORS_SELECTABLE_COLUMNS_BY_NAME,
tabName: "Donors",
url: "/donors",
Expand All @@ -146,6 +152,7 @@ export const ANVIL_TABS: AnvilCMGTabCollection = {
emptyFirstColumn: true,
maxPages: 25,
preselectedColumns: ANVIL_FILES_PRESELECTED_COLUMNS_BY_NAME,
searchFiltersPlaceholderText: ANVIL_CMG_SEARCH_FILTERS_PLACEHOLDER_TEXT,
selectableColumns: ANVIL_DONORS_SELECTABLE_COLUMNS_BY_NAME,
tabName: "Files",
url: "/files",
Expand Down
Loading

0 comments on commit 6eb4259

Please sign in to comment.