diff --git a/src/components/CrudModel.vue b/src/components/CrudModel.vue index 6303f48ae..a37a2b2a9 100644 --- a/src/components/CrudModel.vue +++ b/src/components/CrudModel.vue @@ -332,6 +332,7 @@ watch(formUrl, async () => { :disable="!selected?.length" :title="t('globals.remove')" v-if="$props.defaultRemove" + data-cy="crudModelDefaultRemoveBtn" /> { - let vm; - const mockRows = [ - { id: 1, itemFk: 101 }, - { id: 2, itemFk: 102 }, - ]; - const mockFieldsOptions = [ - { label: 'Field A', field: fieldA, component: 'input', attrs: {} }, - { label: 'Field B', field: fieldB, component: 'date', attrs: {} }, - ]; - const editUrl = '/api/edit'; - - beforeAll(() => { - vi.spyOn(axios, 'post').mockResolvedValue({ status: 200 }); - vm = createWrapper(EditForm, { - props: { - rows: mockRows, - fieldsOptions: mockFieldsOptions, - editUrl, - }, - }).vm; - }); - - afterEach(() => { - vi.clearAllMocks(); - }); - - describe('onSubmit()', () => { - it('should call axios.post with the correct parameters in the payload', async () => { - const selectedField = { field: fieldA, component: 'input', attrs: {} }; - const newValue = 'Test Value'; - - vm.selectedField = selectedField; - vm.newValue = newValue; - - await vm.onSubmit(); - - const payload = axios.post.mock.calls[0][1]; - - expect(axios.post).toHaveBeenCalledWith(editUrl, expect.any(Object)); - expect(payload.field).toEqual(fieldA); - expect(payload.newValue).toEqual(newValue); - - expect(payload.lines).toEqual(expect.arrayContaining(mockRows)); - - expect(vm.isLoading).toEqual(false); - }); - }); -}); diff --git a/src/components/common/VnColor.vue b/src/components/common/VnColor.vue index 8a5a787b0..dccbc7102 100644 --- a/src/components/common/VnColor.vue +++ b/src/components/common/VnColor.vue @@ -1,4 +1,6 @@