diff --git a/cypress/e2e/patient_spec/PatientInvestigation.cy.ts b/cypress/e2e/patient_spec/PatientInvestigation.cy.ts
new file mode 100644
index 00000000000..32213e00104
--- /dev/null
+++ b/cypress/e2e/patient_spec/PatientInvestigation.cy.ts
@@ -0,0 +1,38 @@
+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();
+ cy.clickAndMultiSelectOption("#investigations", [
+ "Haematology",
+ "Urine Test",
+ ]);
+ cy.submitButton("Save Investigation");
+ cy.verifyNotification("Please Enter at least one value");
+ });
+
+ afterEach(() => {
+ cy.saveLocalStorage();
+ });
+});
diff --git a/cypress/pageobject/Patient/PatientInvestigation.ts b/cypress/pageobject/Patient/PatientInvestigation.ts
index 8f73cf908bc..74e29b7ecd7 100644
--- a/cypress/pageobject/Patient/PatientInvestigation.ts
+++ b/cypress/pageobject/Patient/PatientInvestigation.ts
@@ -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");
}
@@ -19,6 +17,10 @@ class PatientInvestigation {
cy.get("#investigation-checkbox").click();
}
+ 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();
diff --git a/src/components/Facility/ConsultationDetails/ConsultationInvestigationsTab.tsx b/src/components/Facility/ConsultationDetails/ConsultationInvestigationsTab.tsx
index ed1157f2c95..bbc17d925a9 100644
--- a/src/components/Facility/ConsultationDetails/ConsultationInvestigationsTab.tsx
+++ b/src/components/Facility/ConsultationDetails/ConsultationInvestigationsTab.tsx
@@ -17,6 +17,7 @@ export const ConsultationInvestigationsTab = (props: ConsultationTabProps) => {