Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions REMS.code-workspace
Original file line number Diff line number Diff line change
Expand Up @@ -275,7 +275,7 @@
"janedoe",
"jdbc",
"jimpims",
"jonsnow",
"johnsnow",
"jpaserver",
"jsrsasign",
"jwks",
Expand Down Expand Up @@ -465,8 +465,8 @@
"webAuthnPolicyPasswordlessRpId",
"webAuthnPolicyPasswordlessSignatureAlgorithms",
"webAuthnPolicyPasswordlessUserVerificationRequirement",
"Westeros",
"Winterfell",
"MA",
"Boston",
"Wiseman",
"zoneinfo"
],
Expand Down
4 changes: 2 additions & 2 deletions TestEnvironmentSetup.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ The notes here describe one method for launching the Request Generator and REMS
![](./test-environment-images/meld_import_resource.png)
- Navigate to the folder that the test-ehr is downloaded to and choose the fhirResourcesToLoad folder
- Individually select and upload each FHIR resource
- Note: you can skip the rems_smith* files if you only want the Jon Snow Patient
- Note: you can skip the rems_smith* files if you only want the John Snow Patient
![](./test-environment-images/meld_import_resource_done.png)
1. Register the REMS SMART on FHIR application
- Navigate to the 'Apps' section of MELD
Expand Down Expand Up @@ -83,7 +83,7 @@ The notes here describe one method for launching the Request Generator and REMS
![](./test-environment-images/meld_login.png)
- Select 'Authorize' to give the app permission to access the FHIR data within your MELD Sandbox
![](./test-environment-images/request_generator_permissions.png)
- Continue using Request Generator as normal with patient Jon Snow
- Continue using Request Generator as normal with patient John Snow
1. Launch the SMART on FHIR App
- From within the Request Generator, after a patient is selected, click on 'LAUNCH SMART ON FHIR APP'
![](./test-environment-images/request_generator.png)
Expand Down
8 changes: 4 additions & 4 deletions TestEnvironmentUsage.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,19 +18,19 @@ After registering an app, we get a client id, which is the client id of the SMAR
The SMART app must be made aware of the client id in order to launch correctly. In the case of the REMS SMART app, registration is handled at the time of launch if the app doesn’t already know which client id to use, which should make the process seamless.

When launching an app, you are connecting it to Meld’s EHR system.
The data can be uploaded manually using the data manager as described in the [Test Environment Usage Document](TestEnvironmentSetup.md). Our default patient, Jon Snow, and all of his related resources should be loaded
The data can be uploaded manually using the data manager as described in the [Test Environment Usage Document](TestEnvironmentSetup.md). Our default patient, John Snow, and all of his related resources should be loaded

![](./test-environment-images/meld_patients.png)

For most purposes, Jon Snow will work just fine as our default patient.
For most purposes, John Snow will work just fine as our default patient.

![](./test-environment-images/meld_personas.png)

When launching any app, Meld will ask you to select a persona. Jon Snow’s resources all reference Rita Abrams, so ideally pick her as the practitioner when launching the REMS SMART app or request generator.
When launching any app, Meld will ask you to select a persona. John Snow’s resources all reference Rita Abrams, so ideally pick her as the practitioner when launching the REMS SMART app or request generator.

![](./test-environment-images/meld_patients_launch.png)

After selecting a practitioner, you can select a patient. Selecting Jon Snow will properly allow the REMS SMART on FHIR app to function. If you are launching the Request Generator, you can launch without a patient.
After selecting a practitioner, you can select a patient. Selecting John Snow will properly allow the REMS SMART on FHIR app to function. If you are launching the Request Generator, you can launch without a patient.

![](./test-environment-images/registration.png)

Expand Down
10 changes: 5 additions & 5 deletions Verify-REMS-Integration-Prototype-Works.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,9 @@
1. Access the EHR gateway at <http://localhost:3000>. Click Launch with the default FHIR Server Endpoint, Client ID, and Scope values.
2. You'll be redirected to <http://localhost:8180>. Authenticate with `alice` as the username and password. You'll then be redirected back to the EHR UI at <http://localhost:3000> to play the role of a prescriber.
3. Click **Select a Patient** in the middle of the page.
4. Locate **Jon Snow** in the list of patients and click the "Select a medication request" dropdown.
4. Locate **John Snow** in the list of patients and click the "Select a medication request" dropdown.
5. Locate **Turalio 200 MG Oral Capsule (Medication request: 2183126)**.
6. Click **Select** to assign Jon Snow as the medication request recipient.
6. Click **Select** to assign John Snow as the medication request recipient.
7. Click **Send Rx to Pharmacy** to dispatch the prescription.
8. Click **Sign Order**, which demonstrates the case where an EHR has CDS Hooks natively.
9. Await the arrival of two **CDS cards**.
Expand All @@ -14,17 +14,17 @@
12. Complete and submit the questionnaire via **Submit REMS Bundle**.
- 12a. For demonstrating an asynchronous workflow, partially complete the questionnaire and click **Save to EHR**.
- 12b. Visit the Patient Portal at <http://localhost:3000/#/patient-portal> as the patient.
- 12c. Login with **JonSnow** as the username and **jon** for the password.
- 12c. Login with **johnsnow** as the username and **john** for the password.
- 12d. Select the saved Questionnaire, complete it, and click **Save to EHR**.
- 12e. Return to the EHR UI at <http://localhost:3000>, select the latest saved questionnaire from the second
dropdown next to Jon Snow's name, and continue as the prescriber.
dropdown next to John Snow's name, and continue as the prescriber.
- 12f. Click **Launch SMART on FHIR App** and fill out the remainder of the questionnaire, including the prescriber signature, then click **Submit REMS Bundle**.
13. A new UI will appear with REMS Admin Status and Medication Status.
14. Visit the Pharmacy Information Management System at <http://localhost:5050> to play the role of a pharmacist.
15. Click **Doctor Orders** in the top navigation.
16. View the Doctor Order that was sent to the pharmacist from the prescriber and use the **Verify ETASU** button to get
a status update of the REMS requirements submitted.
17. Return to the EHR UI at <http://localhost:3000> and play the role of the prescriber again. Select patient Jon Snow
17. Return to the EHR UI at <http://localhost:3000> and play the role of the prescriber again. Select patient John Snow
from the patient select UI and click **Launch SMART on FHIR App**, which will open the SMART on FHIR App in its own
view and demonstrate the case where an EHR does not have CDS Hooks implemented natively.
18. From the medications dropdown select **Turalio 200 MG Oral Capsule**, which should populate the screen with cards
Expand Down
12 changes: 6 additions & 6 deletions tests/useCase1/uc1.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ import { testUtilFillOutForm } from "../util/fillOutForm";
import { testUtilKeycloakLogin } from "../util/keycloakLogin";

/* Ideally these would be sourced from the testing environment, but constants are fine too. */
const patientName = "Jon Snow";
const patientName = "John Snow";
const medication = "Turalio";

// test.slow();
Expand Down Expand Up @@ -46,7 +46,7 @@ test("UC1: content appears in SMART on FHIR, fill out patient enroll form", asyn
await searchField.fill(patientName);
await page.getByRole('option', { name: patientName }).click();

// 3. Find **Jon Snow** in the list of patients and click the first dropdown menu next to his name.
// 3. Find **John Snow** in the list of patients and click the first dropdown menu next to his name.
await expect(page.getByText("ID").first()).toBeVisible();
await page.getByRole('button', { name: 'Request New Medication' }).click();

Expand Down Expand Up @@ -134,11 +134,11 @@ test("UC1: content appears in SMART on FHIR, fill out patient enroll form", asyn
/*
- 12a. Alternatively fill out only some of the questionnaire for an asynchronous workflow and hit **Save to EHR**.
- 12b. Visit the Patient Portal at <http://localhost:3000/patient-portal> and lay the role of the patient.
- 12c. Login to the Patient Portal, use **JonSnow** for the username and **jon** for the password.
- 12c. Login to the Patient Portal, use **JohnSnow** for the username and **john** for the password.
- 12d. Select the saved Questionnaire and fill out the rest of the questionnaire as well as the patient signature in
the questionnaire and hit **Save to EHR** again.
- 12e. Go back to the EHR UI at <http://localhost:3000> and select the latest saved questionnaire from the second
dropdown next to Jon Snow's name and continue in the role of the prescriber.
dropdown next to John Snow's name and continue in the role of the prescriber.
- 12f. Click **Relaunch DTR** and fill out the remainder of the questionnaire, including the prescriber signature,
then click **Submit REMS Bundle**. */

Expand Down Expand Up @@ -184,7 +184,7 @@ test("UC1: content appears in SMART on FHIR, fill out patient enroll form", asyn
* label the table columns, so the alternative is something fragile to changes in the order of cells. */
await expect(pharmacyMedCard.getByText("Pending")).toBeVisible();

/* 17. Go Back to the EHR UI at <http://localhost:3000> and play the role of the prescriber again, select patient Jon Snow
/* 17. Go Back to the EHR UI at <http://localhost:3000> and play the role of the prescriber again, select patient John Snow
from the patient select UI.*/

// Back to CRD App on :3000
Expand All @@ -196,7 +196,7 @@ test("UC1: content appears in SMART on FHIR, fill out patient enroll form", asyn
await searchField2.fill(patientName);
await page.getByRole('option', { name: patientName }).click();

// Find **Jon Snow** in the list of patients and click the first dropdown menu next to his name.
// Find **John Snow** in the list of patients and click the first dropdown menu next to his name.
await expect(page.getByText("ID").first()).toBeVisible();
await page.getByRole('button', { name: 'Request New Medication' }).click();

Expand Down
Loading