test: refs #8217 add TEST

This commit is contained in:
Javier Segarra 2025-03-25 11:31:45 +01:00
parent 6407c2e582
commit 9fb2961022
3 changed files with 18 additions and 8 deletions

View File

@ -12,7 +12,7 @@ import SkeletonForm from 'components/ui/SkeletonForm.vue';
import VnConfirm from './ui/VnConfirm.vue';
import { tMobile } from 'src/composables/tMobile';
import { useArrayData } from 'src/composables/useArrayData';
import { getDifferences, getUpdatedValues, onBeforeSave } from 'src/filters';
import { onBeforeSave } from 'src/filters';
const { push } = useRouter();
const quasar = useQuasar();

View File

@ -92,30 +92,39 @@ describe('FormModel', () => {
expect(vm.hasChanges).toBe(false);
});
it('should call axios.patch with the right data', async () => {
const spy = vi.spyOn(axios, 'patch').mockResolvedValue({ data: {} });
const { vm } = mount({ propsData: { url, model } });
it('should call axios.post with the right data', async () => {
const spy = vi.spyOn(axios, 'post').mockResolvedValue({ data: {} });
const urlCreate = 'mockUrlCreate';
const { vm } = mount({ propsData: { url, urlCreate, model } });
vm.formData = {};
await vm.$nextTick();
vm.formData = { mockKey: 'newVal' };
const formData = { mockKey: 'newVal', mockKey2: 'newVal2' };
vm.formData = formData;
await vm.$nextTick();
await vm.save();
expect(spy).toHaveBeenCalled();
expect(spy).toHaveBeenCalledWith(urlCreate, formData);
vm.formData.mockKey = 'mockVal';
});
it('should call axios.post with the right data', async () => {
const spy = vi.spyOn(axios, 'post').mockResolvedValue({ data: {} });
it('should call axios.patch with the right data', async () => {
const spy = vi.spyOn(axios, 'patch').mockResolvedValue({ data: {} });
const { vm } = mount({
propsData: { url, model, formInitialData, urlCreate: 'mockUrlCreate' },
propsData: {
url,
model,
formInitialData: { ...formInitialData, key1: 'valueKey1' },
},
});
await vm.$nextTick();
vm.formData.mockKey = 'newVal';
await vm.$nextTick();
await vm.save();
expect(spy).toHaveBeenCalled();
expect(spy).toHaveBeenCalledWith(url, { mockKey: 'newVal' });
vm.formData.mockKey = 'mockVal';
});

View File

@ -1,5 +1,6 @@
export default function getDifferences(obj1, obj2) {
let diff = {};
delete obj1.$index;
if (!obj2) return obj1;
delete obj2.$index;