-
Notifications
You must be signed in to change notification settings - Fork 486
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'develop' into fix-issue-6432
- Loading branch information
Showing
11 changed files
with
300 additions
and
84 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,101 @@ | ||
import { cy, describe, before, beforeEach, it, afterEach } from "local-cypress"; | ||
import LoginPage from "../../pageobject/Login/LoginPage"; | ||
import { UserPage } from "../../pageobject/Users/UserSearch"; | ||
import ManageUserPage from "../../pageobject/Users/ManageUserPage"; | ||
|
||
describe("Manage User", () => { | ||
const loginPage = new LoginPage(); | ||
const userPage = new UserPage(); | ||
const manageUserPage = new ManageUserPage(); | ||
const usernametolinkfacilitydoc1 = "dummydoctor4"; | ||
const usernametolinkfacilitydoc2 = "dummydoctor5"; | ||
const usernametolinkfacilitydoc3 = "dummydoctor6"; | ||
const usernametolinkskill = "devdistrictadmin"; | ||
const usernamerealname = "Dummy Doctor"; | ||
const facilitytolinkusername = "Dummy Shifting Center"; | ||
const workinghour = "23"; | ||
|
||
before(() => { | ||
loginPage.loginAsDisctrictAdmin(); | ||
cy.saveLocalStorage(); | ||
}); | ||
|
||
beforeEach(() => { | ||
cy.restoreLocalStorage(); | ||
cy.awaitUrl("/users"); | ||
}); | ||
|
||
it("add working hour for a user and verify its reflection in card and user profile", () => { | ||
// verify mandatory field error and select working hour for a user | ||
userPage.typeInSearchInput(usernametolinkskill); | ||
userPage.checkUsernameText(usernametolinkskill); | ||
manageUserPage.clicksetaveragehourbutton(); | ||
manageUserPage.clearweeklyhourfield(); | ||
manageUserPage.clickSubmit(); | ||
manageUserPage.verifyErrorText("Value should be between 0 and 168"); | ||
// verify the data is reflected in user card and profile page | ||
manageUserPage.typeInWeeklyWorkingHours(workinghour); | ||
manageUserPage.clickSubmit(); | ||
manageUserPage.verifyWorkingHours(workinghour); | ||
manageUserPage.navigateToProfile(); | ||
manageUserPage.verifyProfileWorkingHours(workinghour); | ||
}); | ||
|
||
it("linking and unlinking facility for multiple users, and confirm reflection in user cards and doctor connect", () => { | ||
// verify the user doesn't have any home facility | ||
userPage.typeInSearchInput(usernametolinkfacilitydoc1); | ||
userPage.checkUsernameText(usernametolinkfacilitydoc1); | ||
manageUserPage.assertHomeFacility("No Home Facility"); | ||
// Link a new facility and ensure it is under linked facility - doctor username (1) | ||
manageUserPage.clickFacilitiesTab(); | ||
manageUserPage.typeFacilityName(facilitytolinkusername); | ||
manageUserPage.selectFacilityFromDropdown(facilitytolinkusername); | ||
manageUserPage.clickLinkFacility(); | ||
manageUserPage.assertLinkedFacility(facilitytolinkusername); | ||
// Verify in the already linked facility are not present in droplist | ||
manageUserPage.assertFacilityNotInDropdown(facilitytolinkusername); | ||
manageUserPage.clickCloseSlideOver(); | ||
// Link a new facility and ensure it is under home facility - doctor username (2) | ||
userPage.clearSearchInput(); | ||
userPage.typeInSearchInput(usernametolinkfacilitydoc2); | ||
userPage.checkUsernameText(usernametolinkfacilitydoc2); | ||
manageUserPage.clickFacilitiesTab(); | ||
manageUserPage.typeFacilityName(facilitytolinkusername); | ||
manageUserPage.selectFacilityFromDropdown(facilitytolinkusername); | ||
manageUserPage.clickLinkFacility(); | ||
manageUserPage.clickHomeFacilityIcon(); | ||
manageUserPage.assertnotLinkedFacility(facilitytolinkusername); | ||
manageUserPage.assertHomeFacilitylink(facilitytolinkusername); | ||
manageUserPage.clickCloseSlideOver(); | ||
// verify the home facility doctor id have reflection in user card | ||
userPage.clearSearchInput(); | ||
userPage.typeInSearchInput(usernametolinkfacilitydoc2); | ||
userPage.checkUsernameText(usernametolinkfacilitydoc2); | ||
manageUserPage.assertHomeFacility(facilitytolinkusername); | ||
// Link a new facility and unlink the facility from the doctor username (3) | ||
userPage.clearSearchInput(); | ||
userPage.typeInSearchInput(usernametolinkfacilitydoc3); | ||
userPage.checkUsernameText(usernametolinkfacilitydoc3); | ||
manageUserPage.clickFacilitiesTab(); | ||
manageUserPage.typeFacilityName(facilitytolinkusername); | ||
manageUserPage.selectFacilityFromDropdown(facilitytolinkusername); | ||
manageUserPage.clickLinkFacility(); | ||
manageUserPage.clickUnlinkFacilityButton(); | ||
manageUserPage.clickSubmit(); | ||
manageUserPage.assertnotLinkedFacility; | ||
manageUserPage.linkedfacilitylistnotvisible(); | ||
manageUserPage.clickCloseSlideOver(); | ||
// Go to particular facility doctor connect and all user-id are reflected based on there access | ||
// Path will be facility page to patient page then doctor connect button | ||
manageUserPage.navigateToFacility(); | ||
manageUserPage.typeFacilitySearch(facilitytolinkusername); | ||
manageUserPage.assertFacilityInCard(facilitytolinkusername); | ||
manageUserPage.clickFacilityPatients(); | ||
manageUserPage.clickDoctorConnectButton(); | ||
manageUserPage.assertDoctorConnectVisibility(usernamerealname); | ||
}); | ||
|
||
afterEach(() => { | ||
cy.saveLocalStorage(); | ||
}); | ||
}); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,116 @@ | ||
export class ManageUserPage { | ||
assertHomeFacility(expectedText) { | ||
cy.get("#home_facility").should("contain.text", expectedText); | ||
} | ||
|
||
clickFacilitiesTab() { | ||
cy.get("#facilities").click(); | ||
} | ||
|
||
typeFacilityName(facilityName) { | ||
cy.get("input[name='facility']").click().type(facilityName); | ||
} | ||
|
||
selectFacilityFromDropdown(facilityName) { | ||
cy.get("[role='option']").contains(facilityName).click(); | ||
} | ||
|
||
clickLinkFacility() { | ||
cy.get("#link-facility").click(); | ||
} | ||
|
||
assertLinkedFacility(facilityName) { | ||
cy.get("#linked-facility-list").should("contain.text", facilityName); | ||
} | ||
|
||
assertnotLinkedFacility(facilityName) { | ||
cy.get("#linked-facility-list").should("not.contain", facilityName); | ||
} | ||
|
||
linkedfacilitylistnotvisible() { | ||
cy.get("#linked-facility-list").should("not.exist"); | ||
} | ||
|
||
assertHomeFacilitylink(facilityName) { | ||
cy.get("#home-facility").should("contain.text", facilityName); | ||
} | ||
|
||
assertFacilityNotInDropdown(facilityName) { | ||
this.typeFacilityName(facilityName); | ||
cy.get("[role='option']").should("not.exist"); | ||
} | ||
|
||
clickCloseSlideOver() { | ||
cy.get("#close-slide-over").click(); | ||
} | ||
|
||
clickHomeFacilityIcon() { | ||
cy.get("#home-facility-icon").click(); | ||
} | ||
|
||
clickUnlinkFacilityButton() { | ||
cy.get("#unlink-facility-button").click(); | ||
} | ||
|
||
clickSubmit() { | ||
cy.get("#submit").click(); | ||
} | ||
|
||
clicksetaveragehourbutton() { | ||
cy.get("#avg-workinghour").click(); | ||
} | ||
|
||
clearweeklyhourfield() { | ||
cy.get("#weekly_working_hours").click().clear(); | ||
} | ||
|
||
verifyErrorText(expectedError: string) { | ||
cy.get(".error-text").should("contain", expectedError).and("be.visible"); | ||
} | ||
|
||
typeInWeeklyWorkingHours(hours: string) { | ||
cy.get("#weekly_working_hours").click().type(hours); | ||
} | ||
|
||
navigateToProfile() { | ||
cy.get("#profilenamelink").click(); | ||
} | ||
|
||
verifyWorkingHours(expectedHours: string) { | ||
cy.get("#working-hours").should("contain", `${expectedHours} hours`); | ||
} | ||
|
||
verifyProfileWorkingHours(expectedHours: string) { | ||
cy.get("#averageworkinghour-profile-details").should( | ||
"contain", | ||
expectedHours | ||
); | ||
} | ||
|
||
navigateToFacility() { | ||
cy.visit("/facility"); | ||
} | ||
|
||
typeFacilitySearch(facilityName) { | ||
cy.get("#search").click().type(facilityName); | ||
} | ||
|
||
assertFacilityInCard(facilityName) { | ||
cy.get("#facility-name-card").should("contain", facilityName); | ||
} | ||
|
||
clickFacilityPatients() { | ||
cy.get("#facility-patients").click(); | ||
} | ||
|
||
clickDoctorConnectButton() { | ||
cy.get("#doctor-connect-patient-button").click(); | ||
} | ||
|
||
assertDoctorConnectVisibility(realName) { | ||
cy.get("#doctor-connect-home-doctor").should("contain.text", realName); | ||
cy.get("#doctor-connect-remote-doctor").should("contain.text", realName); | ||
} | ||
} | ||
|
||
export default ManageUserPage; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.