Skip to content

Commit 0ada36e

Browse files
mrtopsytjpaten
authored and
jpaten
committed
test: added anvil-catalog filter search test (#4125)
1 parent 55108ab commit 0ada36e

File tree

5 files changed

+231
-25
lines changed

5 files changed

+231
-25
lines changed
Lines changed: 74 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
1+
import { test } from "@playwright/test";
2+
import {
3+
testDeselectFiltersThroughSearchBar,
4+
testSelectFiltersThroughSearchBar,
5+
} from "../testFunctions";
6+
import {
7+
anvilcatalogTabs,
8+
ANVIL_CATALOG_FILTERS,
9+
CONSENT_CODE_INDEX,
10+
DBGAP_ID_INDEX,
11+
TERRA_WORKSPACE_INDEX,
12+
} from "./anvilcatalog-tabs";
13+
14+
const filterList = [CONSENT_CODE_INDEX, DBGAP_ID_INDEX, TERRA_WORKSPACE_INDEX];
15+
16+
test('Check that selecting filters through the "Search all Filters" textbox works correctly on the Consortia tab', async ({
17+
page,
18+
}) => {
19+
await testSelectFiltersThroughSearchBar(
20+
page,
21+
anvilcatalogTabs.consortia,
22+
filterList.map((i: number) => ANVIL_CATALOG_FILTERS[i])
23+
);
24+
});
25+
26+
test('Check that selecting filters through the "Search all Filters" textbox works correctly on the Studies tab', async ({
27+
page,
28+
}) => {
29+
await testSelectFiltersThroughSearchBar(
30+
page,
31+
anvilcatalogTabs.studies,
32+
filterList.map((i: number) => ANVIL_CATALOG_FILTERS[i])
33+
);
34+
});
35+
36+
test('Check that selecting filters through the "Search all Filters" textbox works correctly on the Workspaces tab', async ({
37+
page,
38+
}) => {
39+
await testSelectFiltersThroughSearchBar(
40+
page,
41+
anvilcatalogTabs.workspaces,
42+
filterList.map((i: number) => ANVIL_CATALOG_FILTERS[i])
43+
);
44+
});
45+
46+
test('Check that deselecting filters through the "Search all Filters" textbox works correctly on the Consortia tab', async ({
47+
page,
48+
}) => {
49+
await testDeselectFiltersThroughSearchBar(
50+
page,
51+
anvilcatalogTabs.consortia,
52+
filterList.map((i: number) => ANVIL_CATALOG_FILTERS[i])
53+
);
54+
});
55+
56+
test('Check that deselecting filters through the "Search all Filters" textbox works correctly on the Studies tab', async ({
57+
page,
58+
}) => {
59+
await testDeselectFiltersThroughSearchBar(
60+
page,
61+
anvilcatalogTabs.studies,
62+
filterList.map((i: number) => ANVIL_CATALOG_FILTERS[i])
63+
);
64+
});
65+
66+
test('Check that deselecting filters through the "Search all Filters" textbox works correctly on the Workspaces tab', async ({
67+
page,
68+
}) => {
69+
await testDeselectFiltersThroughSearchBar(
70+
page,
71+
anvilcatalogTabs.workspaces,
72+
filterList.map((i: number) => ANVIL_CATALOG_FILTERS[i])
73+
);
74+
});

explorer/e2e/anvil-catalog/anvilcatalog-tabs.ts

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,24 +9,49 @@ import {
99
ANVIL_CATALOG_WORKSPACES_SELECTABLE_COLUMNS_BY_NAME,
1010
} from "./constants";
1111

12+
const ANVIL_CATALOG_SEARCH_FILTERS_PLACEHOLDER_TEXT = "Search all filters...";
13+
export const ANVIL_CATALOG_FILTERS = [
14+
"Consent Code",
15+
"Consortium",
16+
"Data Type",
17+
"dbGap Id",
18+
"Disease (indication)",
19+
"Study Design",
20+
"Study",
21+
"Terra Workspace Name",
22+
];
23+
24+
export const CONSENT_CODE_INDEX = 0;
25+
export const CONSORTIUM_INDEX = 1;
26+
export const DATA_TYPE_INDEX = 2;
27+
export const DBGAP_ID_INDEX = 3;
28+
export const DISEASE_INDICATION_INDEX = 4;
29+
export const STUDY_DESIGN_INDEX = 5;
30+
export const STUDY_INDEX = 6;
31+
export const TERRA_WORKSPACE_INDEX = 7;
32+
33+
1234
export const ANVIL_CATALOG_TABS: AnvilCatalogTabCollection = {
1335
CONSORTIA: {
1436
emptyFirstColumn: false,
1537
preselectedColumns: ANVIL_CATALOG_CONSORTIA_PRESELECTED_COLUMNS_BY_NAME,
38+
searchFiltersPlaceholderText: ANVIL_CATALOG_SEARCH_FILTERS_PLACEHOLDER_TEXT,
1639
selectableColumns: ANVIL_CATALOG_CONSORTIA_SELECTABLE_COLUMNS_BY_NAME,
1740
tabName: "Consortia",
1841
url: "/data/consortia",
1942
},
2043
STUDIES: {
2144
emptyFirstColumn: false,
2245
preselectedColumns: ANVIL_CATALOG_STUDIES_PRESELECTED_COLUMNS_BY_NAME,
46+
searchFiltersPlaceholderText: ANVIL_CATALOG_SEARCH_FILTERS_PLACEHOLDER_TEXT,
2347
selectableColumns: ANVIL_CATALOG_STUDIES_SELECTABLE_COLUMNS_BY_NAME,
2448
tabName: "Studies",
2549
url: "/data/studies",
2650
},
2751
WORKSPACES: {
2852
emptyFirstColumn: false,
2953
preselectedColumns: ANVIL_CATALOG_WORKSPACES_PRESELECTED_COLUMNS_BY_NAME,
54+
searchFiltersPlaceholderText: ANVIL_CATALOG_SEARCH_FILTERS_PLACEHOLDER_TEXT,
3055
selectableColumns: ANVIL_CATALOG_WORKSPACES_SELECTABLE_COLUMNS_BY_NAME,
3156
tabName: "Workspaces",
3257
url: "/data/workspaces",

explorer/e2e/anvil/anvil-tabs.ts

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,11 +43,14 @@ export const ORGANISM_TYPE_INDEX = 8;
4343
export const PHENOTYPIC_SEX_INDEX = 9;
4444
export const REPORTED_ETHNICITY_INDEX = 10;
4545

46+
const ANVIL_CMG_SEARCH_FILTERS_PLACEHOLDER_TEXT = "Search all filters...";
47+
4648
export const ANVIL_TABS: AnvilCMGTabCollection = {
4749
ACTIVITIES: {
4850
emptyFirstColumn: false,
4951
maxPages: 25,
5052
preselectedColumns: ANVIL_ACTIVITIES_PRESELECTED_COLUMNS_BY_NAME,
53+
searchFiltersPlaceholderText: ANVIL_CMG_SEARCH_FILTERS_PLACEHOLDER_TEXT,
5154
selectableColumns: ANVIL_ACTIVITIES_SELECTABLE_COLUMNS_BY_NAME,
5255
tabName: "Activities",
5356
url: "/activities",
@@ -56,6 +59,7 @@ export const ANVIL_TABS: AnvilCMGTabCollection = {
5659
emptyFirstColumn: false,
5760
maxPages: 25,
5861
preselectedColumns: ANVIL_BIOSAMPLES_PRESELECTED_COLUMNS_BY_NAME,
62+
searchFiltersPlaceholderText: ANVIL_CMG_SEARCH_FILTERS_PLACEHOLDER_TEXT,
5963
selectableColumns: ANVIL_BIOSAMPLES_SELECTABLE_COLUMNS_BY_NAME,
6064
tabName: "BioSamples",
6165
url: "/biosamples",
@@ -130,6 +134,7 @@ export const ANVIL_TABS: AnvilCMGTabCollection = {
130134
emptyFirstColumn: false,
131135
maxPages: 25,
132136
preselectedColumns: ANVIL_DATASETS_PRESELECTED_COLUMNS_BY_NAME,
137+
searchFiltersPlaceholderText: ANVIL_CMG_SEARCH_FILTERS_PLACEHOLDER_TEXT,
133138
selectableColumns: ANVIL_DATASETS_SELECTABLE_COLUMNS_BY_NAME,
134139
tabName: "Datasets",
135140
url: "/datasets",
@@ -138,6 +143,7 @@ export const ANVIL_TABS: AnvilCMGTabCollection = {
138143
emptyFirstColumn: false,
139144
maxPages: 25,
140145
preselectedColumns: ANVIL_DONORS_PRESELECTED_COLUMNS_BY_NAME,
146+
searchFiltersPlaceholderText: ANVIL_CMG_SEARCH_FILTERS_PLACEHOLDER_TEXT,
141147
selectableColumns: ANVIL_DONORS_SELECTABLE_COLUMNS_BY_NAME,
142148
tabName: "Donors",
143149
url: "/donors",
@@ -146,6 +152,7 @@ export const ANVIL_TABS: AnvilCMGTabCollection = {
146152
emptyFirstColumn: true,
147153
maxPages: 25,
148154
preselectedColumns: ANVIL_FILES_PRESELECTED_COLUMNS_BY_NAME,
155+
searchFiltersPlaceholderText: ANVIL_CMG_SEARCH_FILTERS_PLACEHOLDER_TEXT,
149156
selectableColumns: ANVIL_DONORS_SELECTABLE_COLUMNS_BY_NAME,
150157
tabName: "Files",
151158
url: "/files",

0 commit comments

Comments
 (0)