feat(subjects): add visit drawer and editable screening dates
This commit is contained in:
@@ -86,7 +86,8 @@ describe("SubjectDetail medication adherence", () => {
|
||||
expect(source).toContain("v-if=\"canUpdateAe || canDeleteAe\"");
|
||||
expect(source).toContain("v-if=\"canUpdatePd || canDeletePd\"");
|
||||
expect(source).toContain("const canSaveHistory = computed(() => (historyEditingId.value ? canUpdateHistory.value : canCreateHistory.value));");
|
||||
expect(source).toContain("const canSaveVisit = computed(() => (visitEditingId.value ? canUpdateVisit.value : canCreateVisit.value));");
|
||||
expect(source).toContain(':can-create="canCreateVisit"');
|
||||
expect(source).toContain(':can-update="canUpdateVisit"');
|
||||
expect(source).toContain("const canSaveAe = computed(() => (aeEditingId.value ? canUpdateAe.value : canCreateAe.value));");
|
||||
expect(source).toContain("const canSavePd = computed(() => (pdEditingId.value ? canUpdatePd.value : canCreatePd.value));");
|
||||
expect(source).toContain("const canReadHistory = computed(() => canUseApiPermission(\"subject_histories:read\"));");
|
||||
@@ -111,4 +112,39 @@ describe("SubjectDetail drawer editor", () => {
|
||||
expect(source).not.toContain("subjectEditing");
|
||||
expect(source).not.toContain("saveSubjectEdit");
|
||||
});
|
||||
|
||||
it("uses drawer editors for participant subresource create and edit flows", () => {
|
||||
const source = readSubjectDetail();
|
||||
|
||||
expect(source).toContain("VisitEditorDrawer");
|
||||
expect(source).toContain("adherenceDrawerVisible");
|
||||
expect(source).toContain("aeDrawerVisible");
|
||||
expect(source).toContain("pdDrawerVisible");
|
||||
expect(source).toContain("openVisitDrawer");
|
||||
expect(source).toContain("openAeDrawer");
|
||||
expect(source).toContain("openPdDrawer");
|
||||
expect(source).toContain("openMedicationAdherenceDrawer");
|
||||
expect(source).not.toContain("visitDialogVisible");
|
||||
expect(source).not.toContain("aeDialogVisible");
|
||||
expect(source).not.toContain("pdDialogVisible");
|
||||
expect(source).not.toContain("adherenceEditing");
|
||||
expect(source).not.toContain("<el-dialog v-if=\"visitDialogVisible\"");
|
||||
expect(source).not.toContain("<el-dialog v-if=\"aeDialogVisible\"");
|
||||
expect(source).not.toContain("<el-dialog v-if=\"pdDialogVisible\"");
|
||||
});
|
||||
});
|
||||
|
||||
describe("VisitEditorDrawer business form", () => {
|
||||
const readVisitEditorDrawer = () => readFileSync(resolve(__dirname, "./VisitEditorDrawer.vue"), "utf8");
|
||||
|
||||
it("keeps create and edit visit flows on the same business fields", () => {
|
||||
const source = readVisitEditorDrawer();
|
||||
|
||||
expect(source).not.toContain("<template v-if=\"isEditing\">");
|
||||
expect(source).not.toContain("<template v-else>");
|
||||
expect(source).toContain("v-model=\"form.actual_date\"");
|
||||
expect(source).toContain("v-model=\"form.notes\"");
|
||||
expect(source).toContain("actual_date: form.actual_date || null");
|
||||
expect(source).toContain("notes: form.notes || null");
|
||||
});
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user