@applica-software-guru/crud-client
Version:
Libreria per l'accesso ai servizi REST di Applica.
52 lines (41 loc) • 1.59 kB
text/typescript
import { PASSWORD, USERNAME, createProviders, createRandomString } from './config';
import { describe, expect, it } from 'vitest';
describe('test deleteMany', async () => {
const { dataProvider, authProvider } = createProviders();
it('should fail when not logged in', async () => {
expect(dataProvider.deleteMany('entities/category', { ids: ['a', 'b', 'c'] })).rejects.toThrow(
'iam.error.unauthorized'
);
});
it('should success with valid data', async () => {
await authProvider.login({ username: USERNAME, password: PASSWORD });
const category1 = await dataProvider.create('entities/category', {
data: {
description: { it: createRandomString(10) }
}
});
const category2 = await dataProvider.create('entities/category', {
data: {
description: { it: createRandomString(10) }
}
});
const category3 = await dataProvider.create('entities/category', {
data: {
description: { it: createRandomString(10) }
}
});
expect(category1).toBeDefined();
expect(category1?.data?.id).toBeDefined();
expect(category2).toBeDefined();
expect(category2?.data?.id).toBeDefined();
expect(category3).toBeDefined();
expect(category3?.data?.id).toBeDefined();
const { data } = await dataProvider.deleteMany('entities/category', {
ids: [category1?.data?.id, category2?.data?.id]
});
expect(data).toBeDefined();
expect(data?.length).toBe(2);
expect(data).toContain(category1?.data?.id);
expect(data).toContain(category2?.data?.id);
});
});