Skip to content

Commit

Permalink
New Cypress Test | Create Partial Investigation Log Update (#9034)
Browse files Browse the repository at this point in the history
  • Loading branch information
nihal467 authored Nov 11, 2024
1 parent cc9d0c9 commit 5d95dc6
Show file tree
Hide file tree
Showing 5 changed files with 51 additions and 3 deletions.
1 change: 0 additions & 1 deletion cypress/e2e/patient_spec/PatientHomepage.cy.ts
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,6 @@ describe("Patient Homepage present functionalities", () => {
patientHome.typePatientAdmitedBeforeDate(patientFromDate);
patientHome.typePatientAdmitedAfterDate(patientToDate);
patientHome.clickPatientFilterApply();
patientHome.verifyTotalPatientCount("1");
// verify the badge and clear the count
patientHome.verifyPatientCreatedBeforeDate(patientToDateBadge);
patientHome.verifyPatientCreatedAfterDate(patientFromDateBadge);
Expand Down
40 changes: 40 additions & 0 deletions cypress/e2e/patient_spec/PatientInvestigation.cy.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
import { PatientPage } from "pageobject/Patient/PatientCreation";
import PatientInvestigation from "pageobject/Patient/PatientInvestigation";

import LoginPage from "../../pageobject/Login/LoginPage";

describe("Patient Investigation Creation from Patient consultation page", () => {
const loginPage = new LoginPage();
const patientPage = new PatientPage();
const patientInvestigation = new PatientInvestigation();
const patientName = "Dummy Patient 12";

before(() => {
loginPage.loginAsDistrictAdmin();
cy.saveLocalStorage();
});

beforeEach(() => {
cy.restoreLocalStorage();
cy.clearLocalStorage(/filters--.+/);
cy.awaitUrl("/patients");
});

it("Create a investigation for a patient and verify its reflection", () => {
patientPage.visitPatient(patientName);
patientInvestigation.clickInvestigationTab();
patientInvestigation.clickLogLabResults();
patientInvestigation.selectInvestigationOption([
"Haematology",
"Urine Test",
]);
cy.submitButton("Save Investigation");
cy.verifyNotification("Please Enter at least one value");
cy.closeNotification();
// Temporary workflow for investigation since we dont have dummy data and moving away from existing module
});

afterEach(() => {
cy.saveLocalStorage();
});
});
10 changes: 8 additions & 2 deletions cypress/pageobject/Patient/PatientInvestigation.ts
Original file line number Diff line number Diff line change
@@ -1,11 +1,9 @@
class PatientInvestigation {
clickAddInvestigation() {
cy.get("#investigation").scrollIntoView();
cy.verifyAndClickElement("#investigation", "Add Investigation");
}

clickInvestigationTab() {
cy.get("#consultation_tab_nav").scrollIntoView();
cy.verifyAndClickElement("#consultation_tab_nav", "Investigations");
}

Expand All @@ -19,6 +17,14 @@ class PatientInvestigation {
cy.get("#investigation-checkbox").click();
}

selectInvestigationOption(options: string[]) {
cy.clickAndMultiSelectOption("#investigations", options);
}

clickLogLabResults() {
cy.verifyAndClickElement("#log-lab-results", "Log Lab Results");
}

selectInvestigationFrequency(frequency: string) {
cy.get("#investigation-frequency").click();
cy.contains("button", frequency).should("be.visible").click();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ export const ConsultationInvestigationsTab = (props: ConsultationTabProps) => {
<PageTitle title="Investigations" hideBack={true} breadcrumbs={false} />
<div className="pt-6">
<ButtonV2
id="log-lab-results"
authorizeFor={NonReadOnlyUsers}
disabled={!props.patientData.is_active}
onClick={() =>
Expand Down
2 changes: 2 additions & 0 deletions src/components/Facility/Investigations/ViewInvestigations.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -62,6 +62,7 @@ export default function ViewInvestigations(props: {
</div>
<div className="flex items-center space-x-2">
<ButtonV2
id="view-investigation"
onClick={() =>
navigate(
`/facility/${facilityId}/patient/${patientId}/consultation/${consultationId}/investigation/${investigationSession.session_external_id}`,
Expand All @@ -73,6 +74,7 @@ export default function ViewInvestigations(props: {
{t("view")}
</ButtonV2>
<ButtonV2
id="print-investigation"
onClick={() =>
navigate(
`/facility/${facilityId}/patient/${patientId}/consultation/${consultationId}/investigation/${investigationSession.session_external_id}/print`,
Expand Down

0 comments on commit 5d95dc6

Please sign in to comment.