Skip to content

Commit 54e9abe

Browse files
Merge branch 'develop' into remove-clickElementById/ohcnetwork#8929
2 parents 9ab927a + da5d576 commit 54e9abe

File tree

13 files changed

+80
-77
lines changed

13 files changed

+80
-77
lines changed

cypress/e2e/assets_spec/AssetHomepage.cy.ts

+3-2
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
import { advanceFilters } from "pageobject/utils/advanceFilterHelpers";
12
import { v4 as uuidv4 } from "uuid";
23

34
import { AssetPage } from "../../pageobject/Asset/AssetCreation";
@@ -65,13 +66,13 @@ describe("Asset Tab", () => {
6566
"ONVIF Camera",
6667
"Camera Loc",
6768
);
68-
assetFilters.clickadvancefilter();
69+
advanceFilters.clickAdvancedFiltersButton();
6970
assetFilters.clickslideoverbackbutton(); // to verify the back button doesn't clear applied filters
7071
assetFilters.assertFacilityText("Dummy Facility 40");
7172
assetFilters.assertAssetClassText("ONVIF");
7273
assetFilters.assertStatusText("ACTIVE");
7374
assetFilters.assertLocationText("Camera Loc");
74-
assetFilters.clickadvancefilter();
75+
advanceFilters.clickAdvancedFiltersButton();
7576
assetFilters.clearFilters();
7677
});
7778

cypress/e2e/facility_spec/FacilityCreation.cy.ts

+5-4
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,7 @@ describe("Facility Creation", () => {
5757
"This field is required",
5858
];
5959
const triageErrorMessage = ["This field is required"];
60+
const facilityType = "Primary Health Centres";
6061

6162
before(() => {
6263
loginPage.loginAsDistrictAdmin();
@@ -117,7 +118,7 @@ describe("Facility Creation", () => {
117118
facilityPage.submitForm();
118119
userCreationPage.verifyErrorMessages(facilityErrorMessage);
119120
facilityPage.fillFacilityName(facilityName);
120-
facilityPage.clickUpdateFacilityType("Primary Health Centres");
121+
facilityPage.selectFacilityType(facilityType);
121122
facilityPage.clickfacilityfeatureoption();
122123
facilityFeature.forEach((featureText) => {
123124
cy.get("[role='option']").contains(featureText).click();
@@ -206,7 +207,7 @@ describe("Facility Creation", () => {
206207
it("Create a new facility with single bed and doctor capacity", () => {
207208
facilityPage.visitCreateFacilityPage();
208209
facilityPage.fillFacilityName(facilityName);
209-
facilityPage.clickUpdateFacilityType("Primary Health Centres");
210+
facilityPage.selectFacilityType(facilityType);
210211
facilityPage.fillPincode("682001");
211212
facilityPage.selectStateOnPincode("Kerala");
212213
facilityPage.selectDistrictOnPincode("Ernakulam");
@@ -246,7 +247,7 @@ describe("Facility Creation", () => {
246247
it("Create a new facility with no bed and doctor capacity", () => {
247248
facilityPage.visitCreateFacilityPage();
248249
facilityPage.fillFacilityName(facilityName);
249-
facilityPage.clickUpdateFacilityType("Primary Health Centres");
250+
facilityPage.selectFacilityType(facilityType);
250251
facilityPage.fillPincode("682001");
251252
facilityPage.selectStateOnPincode("Kerala");
252253
facilityPage.selectDistrictOnPincode("Ernakulam");
@@ -285,7 +286,7 @@ describe("Facility Creation", () => {
285286
facilityPage.visitUpdateFacilityPage(facilityUrl1);
286287
facilityPage.clickManageFacilityDropdown();
287288
facilityPage.clickUpdateFacilityOption();
288-
facilityPage.clickUpdateFacilityType("Primary Health Centres");
289+
facilityPage.selectFacilityType(facilityType);
289290
facilityPage.fillAddress(facilityUpdateAddress);
290291
facilityPage.fillOxygenCapacity(oxygenCapacity);
291292
facilityPage.fillExpectedOxygenRequirement(oxygenExpected);

cypress/e2e/facility_spec/FacilityHomepage.cy.ts

+14-12
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ import FacilityNotify from "../../pageobject/Facility/FacilityNotify";
66
import LoginPage from "../../pageobject/Login/LoginPage";
77
import ManageUserPage from "../../pageobject/Users/ManageUserPage";
88
import { UserPage } from "../../pageobject/Users/UserSearch";
9+
import { advanceFilters } from "../../pageobject/utils/advanceFilterHelpers";
910

1011
describe("Facility Homepage Function", () => {
1112
const loginPage = new LoginPage();
@@ -61,18 +62,19 @@ describe("Facility Homepage Function", () => {
6162
});
6263

6364
it("Verify the functionality of advance filter", () => {
64-
userPage.clickAdvancedFilters();
65-
facilityPage.selectState(stateName);
66-
facilityPage.selectDistrict(district);
67-
facilityPage.selectLocalBody(localBody);
68-
facilityPage.clickUpdateFacilityType(facilityType);
69-
userPage.applyFilter();
65+
advanceFilters.clickAdvancedFiltersButton();
66+
advanceFilters.selectState(stateName);
67+
advanceFilters.selectDistrict(district);
68+
advanceFilters.selectLocalBody(localBody);
69+
advanceFilters.selectFacilityType(facilityType);
70+
advanceFilters.applySelectedFilter();
7071
facilityPage.verifyStateBadgeContent(stateName);
7172
facilityPage.verifyDistrictBadgeContent(district);
7273
facilityPage.verifyLocalBodyBadgeContent(localBody);
7374
facilityPage.verifyFacilityTypeBadgeContent(facilityType);
7475
manageUserPage.assertFacilityInCard(facilityName);
75-
userPage.clearFilters();
76+
advanceFilters.clickAdvancedFiltersButton();
77+
advanceFilters.clickClearAdvanceFilters();
7678
userPage.verifyDataTestIdNotVisible("State");
7779
userPage.verifyDataTestIdNotVisible("District");
7880
userPage.verifyDataTestIdNotVisible("Facility type");
@@ -116,11 +118,11 @@ describe("Facility Homepage Function", () => {
116118
});
117119

118120
it("Verify Facility Detail page redirection to CNS and Live Minitoring ", () => {
119-
userPage.clickAdvancedFilters();
120-
facilityPage.selectState(stateName);
121-
facilityPage.selectDistrict(district);
122-
facilityPage.selectLocalBody(localBody);
123-
userPage.applyFilter();
121+
advanceFilters.clickAdvancedFiltersButton();
122+
advanceFilters.selectState(stateName);
123+
advanceFilters.selectDistrict(district);
124+
advanceFilters.selectLocalBody(localBody);
125+
advanceFilters.applySelectedFilter();
124126
// go to cns page in the facility details page
125127
manageUserPage.typeFacilitySearch(facilityName);
126128
facilityPage.verifyFacilityBadgeContent(facilityName);

cypress/e2e/patient_spec/PatientHomepage.cy.ts

+7-5
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
import { advanceFilters } from "pageobject/utils/advanceFilterHelpers";
2+
13
import LoginPage from "../../pageobject/Login/LoginPage";
24
import PatientHome from "../../pageobject/Patient/PatientHome";
35

@@ -35,7 +37,7 @@ describe("Patient Homepage present functionalities", () => {
3537
});
3638

3739
it("Date based advance filters applied in the patient tab", () => {
38-
patientHome.clickPatientAdvanceFilters();
40+
advanceFilters.clickAdvancedFiltersButton();
3941
patientHome.typePatientCreatedBeforeDate(patientFromDate);
4042
patientHome.typePatientCreatedAfterDate(patientToDate);
4143
patientHome.typePatientModifiedBeforeDate(patientFromDate);
@@ -55,7 +57,7 @@ describe("Patient Homepage present functionalities", () => {
5557
});
5658

5759
it("Facility Geography based advance filters applied in the patient tab", () => {
58-
patientHome.clickPatientAdvanceFilters();
60+
advanceFilters.clickAdvancedFiltersButton();
5961
patientHome.typeFacilityName(facilityName);
6062
patientHome.selectFacilityType(facilityType);
6163
patientHome.typeFacilityLsgBody(facilityLsgBody);
@@ -73,7 +75,7 @@ describe("Patient Homepage present functionalities", () => {
7375

7476
it("Patient diagnosis based advance filters applied in the patient tab", () => {
7577
// Patient Filtering based on icd-11 data
76-
patientHome.clickPatientAdvanceFilters();
78+
advanceFilters.clickAdvancedFiltersButton();
7779
patientHome.selectAnyIcdDiagnosis(patientIcdDiagnosis, patientIcdDiagnosis);
7880
patientHome.selectConfirmedIcdDiagnosis(
7981
patientIcdDiagnosis,
@@ -103,7 +105,7 @@ describe("Patient Homepage present functionalities", () => {
103105
cy.clearAllFilters();
104106
patientHome.verifyTotalPatientCount("1");
105107
// Apply Any and confirmed diagonsis to verify patient count 17
106-
patientHome.clickPatientAdvanceFilters();
108+
advanceFilters.clickAdvancedFiltersButton();
107109
patientHome.selectAnyIcdDiagnosis(patientIcdDiagnosis, patientIcdDiagnosis);
108110
patientHome.selectConfirmedIcdDiagnosis(
109111
patientIcdDiagnosis,
@@ -115,7 +117,7 @@ describe("Patient Homepage present functionalities", () => {
115117

116118
it("Patient Details based advance filters applied in the patient tab", () => {
117119
// Patient Filtering based on patient details
118-
patientHome.clickPatientAdvanceFilters();
120+
advanceFilters.clickAdvancedFiltersButton();
119121
patientHome.selectPatientGenderfilter(patientGender);
120122
patientHome.selectPatientCategoryfilter(patientCategory);
121123
patientHome.typePatientMinimumAgeFilter(patientMinimumAge);

cypress/e2e/shifting_spec/ShiftingAdvanceFilters.cy.ts

+3-1
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
import { advanceFilters } from "pageobject/utils/advanceFilterHelpers";
2+
13
import ShiftingPage from "../../pageobject/Shift/ShiftFilters";
24

35
describe("Shifting section filter", () => {
@@ -12,7 +14,7 @@ describe("Shifting section filter", () => {
1214
cy.restoreLocalStorage();
1315
cy.clearLocalStorage(/filters--.+/);
1416
cy.awaitUrl("/shifting");
15-
shiftingPage.advancedFilterButton().click();
17+
advanceFilters.clickAdvancedFiltersButton();
1618
});
1719

1820
it("filter by facility", () => {

cypress/e2e/users_spec/UsersHomepage.cy.ts

+6-3
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
import { advanceFilters } from "pageobject/utils/advanceFilterHelpers";
2+
13
import LoginPage from "../../pageobject/Login/LoginPage";
24
import { UserPage } from "../../pageobject/Users/UserSearch";
35

@@ -28,7 +30,7 @@ describe("User Homepage", () => {
2830
});
2931

3032
it("User advance filter functionality", () => {
31-
userPage.clickAdvancedFilters();
33+
advanceFilters.clickAdvancedFiltersButton();
3234
userPage.typeInFirstName(firstName);
3335
userPage.typeInLastName(lastName);
3436
userPage.selectRole(role);
@@ -37,7 +39,7 @@ describe("User Homepage", () => {
3739
userPage.typeInPhoneNumber(phoneNumber);
3840
userPage.typeInAltPhoneNumber(altPhoneNumber);
3941
userPage.selectHomeFacility(homeFacility);
40-
userPage.applyFilter();
42+
advanceFilters.applySelectedFilter();
4143
userPage.checkUsernameText(nurseUserName);
4244
// Verify the badges related to the data
4345
userPage.verifyDataTestIdText("First Name", `First Name: ${firstName}`);
@@ -55,7 +57,8 @@ describe("User Homepage", () => {
5557
"Home Facility",
5658
`Home Facility: ${homeFacility}`,
5759
);
58-
userPage.clearFilters();
60+
advanceFilters.clickAdvancedFiltersButton();
61+
advanceFilters.clickClearAdvanceFilters();
5962
userPage.verifyDataTestIdNotVisible("First Name");
6063
userPage.verifyDataTestIdNotVisible("Last Name");
6164
userPage.verifyDataTestIdNotVisible("Phone Number");

cypress/e2e/users_spec/UsersManage.cy.ts

+4-2
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
import { advanceFilters } from "pageobject/utils/advanceFilterHelpers";
2+
13
import LoginPage from "../../pageobject/Login/LoginPage";
24
import ManageUserPage from "../../pageobject/Users/ManageUserPage";
35
import { UserCreationPage } from "../../pageobject/Users/UserCreation";
@@ -55,10 +57,10 @@ describe("Manage User", () => {
5557

5658
it("linking skills for a doctor users and verify its reflection in doctor connect", () => {
5759
// select a doctor user and link and unlink same skill twice and verify the badge is only shown once in doctor connect
58-
userPage.clickAdvancedFilters();
60+
advanceFilters.clickAdvancedFiltersButton();
5961
userPage.typeInFirstName(firstNameUserSkill);
6062
userPage.typeInLastName(lastNameUserSkill);
61-
userPage.applyFilter();
63+
advanceFilters.applySelectedFilter();
6264
userPage.checkUsernameText(usernameToLinkSkill);
6365
manageUserPage.clicklinkedskillbutton();
6466
manageUserPage.selectSkillFromDropdown(linkedskill);

cypress/pageobject/Asset/AssetFilters.ts

-3
Original file line numberDiff line numberDiff line change
@@ -49,9 +49,6 @@ export class AssetFilters {
4949
expect(allEmpty).to.be.true;
5050
});
5151
}
52-
clickadvancefilter() {
53-
cy.get("#advanced-filter").click();
54-
}
5552
clickslideoverbackbutton() {
5653
cy.get("#close-slide-over").click();
5754
}

cypress/pageobject/Facility/FacilityCreation.ts

+9-24
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
// FacilityPage.ts
1+
import { advanceFilters } from "pageobject/utils/advanceFilterHelpers";
22

33
class FacilityPage {
44
visitCreateFacilityPage() {
@@ -14,21 +14,21 @@ class FacilityPage {
1414
cy.get("#search").click().type(facilityName);
1515
}
1616

17+
selectFacilityType(facility: string) {
18+
advanceFilters.selectFacilityType(facility);
19+
}
20+
21+
selectLocalBody(localBody: string) {
22+
advanceFilters.selectLocalBody(localBody);
23+
}
24+
1725
visitUpdateFacilityPage(url: string) {
1826
cy.intercept("GET", "**/api/v1/facility/**").as("getFacilities");
1927
cy.visit(url);
2028
cy.wait("@getFacilities").its("response.statusCode").should("eq", 200);
2129
cy.get("#manage-facility-dropdown button").should("be.visible");
2230
}
2331

24-
clickUpdateFacilityType(facilityType: string) {
25-
cy.get("#facility_type")
26-
.click()
27-
.then(() => {
28-
cy.get("[role='option']").contains(facilityType).click();
29-
});
30-
}
31-
3232
fillFacilityName(name: string) {
3333
cy.get("#name").click().clear().click().type(name);
3434
}
@@ -37,21 +37,6 @@ class FacilityPage {
3737
cy.get("#pincode").click().type(pincode);
3838
}
3939

40-
selectState(state: string) {
41-
cy.get("div#state button").click();
42-
cy.get("[role='option']").contains(state).click();
43-
}
44-
45-
selectDistrict(district: string) {
46-
cy.get("div#district button").click();
47-
cy.get("[role='option']").contains(district).click();
48-
}
49-
50-
selectLocalBody(localBody: string) {
51-
cy.get("div#local_body button").click();
52-
cy.get("[role='option']").contains(localBody).click();
53-
}
54-
5540
selectWard(ward: string) {
5641
cy.get("div#ward button").click();
5742
cy.get("[role='option']").contains(ward).click();

cypress/pageobject/Patient/PatientHome.ts

-4
Original file line numberDiff line numberDiff line change
@@ -60,10 +60,6 @@ class PatientHome {
6060
);
6161
}
6262

63-
clickPatientAdvanceFilters() {
64-
cy.get("#advanced-filter").click();
65-
}
66-
6763
selectPatientGenderfilter(gender: string) {
6864
cy.clickAndSelectOption("#gender-advancefilter", gender);
6965
}

cypress/pageobject/Shift/ShiftFilters.ts

-4
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,4 @@
11
class ShiftingPage {
2-
advancedFilterButton() {
3-
return cy.get("#advanced-filter");
4-
}
5-
62
originFacilityInput() {
73
return cy.get("input[name='origin_facility']");
84
}

cypress/pageobject/Users/UserSearch.ts

-13
Original file line numberDiff line numberDiff line change
@@ -35,10 +35,6 @@ export class UserPage {
3535
cy.get(this.removeIcon).click();
3636
}
3737

38-
clickAdvancedFilters() {
39-
cy.get("#advanced-filter").contains("Advanced Filters").click();
40-
}
41-
4238
typeInFirstName(firstName: string) {
4339
cy.get("#first_name").click().type(firstName);
4440
}
@@ -72,19 +68,10 @@ export class UserPage {
7268
cy.typeAndSelectOption("input[name='home_facility']", facility);
7369
}
7470

75-
applyFilter() {
76-
cy.get("#apply-filter").click();
77-
}
78-
7971
verifyDataTestIdText(testId: string, text: string) {
8072
cy.get(`[data-testid="${testId}"]`).contains(text).should("be.visible");
8173
}
8274

83-
clearFilters() {
84-
this.clickAdvancedFilters();
85-
cy.get("#clear-filter").contains("Clear").click();
86-
}
87-
8875
verifyDataTestIdNotVisible(testId: string) {
8976
cy.get(`[data-testid="${testId}"]`).should("not.be.visible");
9077
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
export const advanceFilters = {
2+
clickAdvancedFiltersButton() {
3+
cy.verifyAndClickElement("#advanced-filter", "Advanced Filters");
4+
},
5+
6+
selectState(state: string) {
7+
cy.clickAndSelectOption("#state", state);
8+
},
9+
10+
selectDistrict(district: string) {
11+
cy.clickAndSelectOption("#district", district);
12+
},
13+
14+
selectLocalBody(localBody: string) {
15+
cy.clickAndSelectOption("#local_body", localBody);
16+
},
17+
18+
applySelectedFilter() {
19+
cy.verifyAndClickElement("#apply-filter", "Apply");
20+
},
21+
22+
selectFacilityType(facilityType: string) {
23+
cy.clickAndSelectOption("#facility_type", facilityType);
24+
},
25+
26+
clickClearAdvanceFilters() {
27+
cy.verifyAndClickElement("#clear-filter", "Clear");
28+
},
29+
};

0 commit comments

Comments
 (0)