UNPKG

@applica-software-guru/crud-client

Version:

Libreria per l'accesso ai servizi REST di Applica.

78 lines (67 loc) 1.86 kB
import { PASSWORD, USERNAME, createProviders, createRandomString } from './config'; import { describe, expect, it } from 'vitest'; describe('test getManyReference', async () => { const { dataProvider, authProvider } = createProviders(); it('should fail when not logged in', async () => { const id = 'fake'; expect( dataProvider.getManyReference('entities/category', { target: 'id', id, pagination: { page: 1, perPage: 10 }, sort: { field: 'id', order: 'ASC' }, filter: {} }) ).rejects.toThrow('iam.error.forbidden'); }); it('should fail with invalid id', async () => { const id = 'fake'; await authProvider.login({ username: USERNAME, password: PASSWORD }); const { data } = await dataProvider.getManyReference('entities/category', { target: 'id', id, pagination: { page: 1, perPage: 10 }, sort: { field: 'id', order: 'ASC' }, filter: {} }); expect(data).toBeDefined(); expect(data?.length).toBe(0); }); it('should success with valid data', async () => { await authProvider.login({ username: USERNAME, password: PASSWORD }); const category = await dataProvider.create('entities/category', { data: { description: { it: createRandomString(10) } } }); expect(category).toBeDefined(); expect(category?.data?.id).toBeDefined(); const { data } = await dataProvider.getManyReference('entities/category', { target: 'id', id: category.data?.id, pagination: { page: 1, perPage: 10 }, sort: { field: 'id', order: 'ASC' }, filter: {} }); expect(data).toBeDefined(); expect(data?.length).toBe(1); }); });