Skip to content

Commit 5e2b41c

Browse files
fix: CCP-4936 bug when enabling team draft share on Create (#1911)
* fix: CCP-4936 bug when enabling team draft share on Create * Update FormDesigner.vue
1 parent 653b53e commit 5e2b41c

3 files changed

Lines changed: 32 additions & 0 deletions

File tree

app/frontend/src/components/designer/FormDesigner.vue

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -402,6 +402,7 @@ async function schemaCreateNew() {
402402
}),
403403
sendSubmissionReceivedEmail: form.value.sendSubmissionReceivedEmail,
404404
enableSubmitterDraft: form.value.enableSubmitterDraft,
405+
enableTeamMemberDraftShare: form.value.enableTeamMemberDraftShare,
405406
allowSubmitterToUploadFile: form.value.allowSubmitterToUploadFile,
406407
enableCopyExistingSubmission: form.value.enableCopyExistingSubmission,
407408
wideFormLayout: form.value.wideFormLayout,

app/src/forms/form/service.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -270,6 +270,7 @@ const service = {
270270
obj.enableStatusUpdates = data.enableStatusUpdates;
271271
obj.enableSubmitterRevision = data.enableSubmitterRevision;
272272
obj.enableSubmitterDraft = data.enableSubmitterDraft;
273+
obj.enableTeamMemberDraftShare = data.enableTeamMemberDraftShare;
273274
obj.createdBy = currentUser?.usernameIdp || 'public';
274275
obj.allowSubmitterToUploadFile = service._setAllowSubmitterToUploadFile(data);
275276
obj.schedule = data.schedule;

app/tests/unit/forms/form/service.spec.js

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1163,6 +1163,36 @@ describe('createForm', () => {
11631163
);
11641164
});
11651165

1166+
it('should properly handle enableTeamMemberDraftShare in createForm', async () => {
1167+
service.validateScheduleObject = jest.fn().mockReturnValueOnce({ status: 'success' });
1168+
service.readForm = jest.fn().mockReturnValueOnce({});
1169+
formMetadataService.upsert = jest.fn().mockResolvedValueOnce();
1170+
eventStreamConfigService.upsert = jest.fn().mockResolvedValueOnce();
1171+
1172+
const data = {
1173+
name: 'Test Form',
1174+
identityProviders: [{ code: 'idir' }],
1175+
enableSubmitterDraft: true,
1176+
enableTeamMemberDraftShare: true,
1177+
};
1178+
1179+
// Mock the Form.insert to capture what's being inserted
1180+
const mockInsert = jest.fn().mockResolvedValue({ id: formId });
1181+
Form.query = jest.fn().mockReturnValue({
1182+
insert: mockInsert,
1183+
});
1184+
1185+
await service.createForm(data, currentUser);
1186+
1187+
// Verify that enableTeamMemberDraftShare was passed to the insert
1188+
expect(mockInsert).toHaveBeenCalledWith(
1189+
expect.objectContaining({
1190+
enableSubmitterDraft: true,
1191+
enableTeamMemberDraftShare: true,
1192+
})
1193+
);
1194+
});
1195+
11661196
it('should throw when tenant form creation is attempted without headers', async () => {
11671197
service.validateScheduleObject = jest.fn().mockReturnValueOnce({ status: 'success' });
11681198
service.readForm = jest.fn().mockResolvedValueOnce({});

0 commit comments

Comments
 (0)