ra-data-opencrud
Version:
A Prisma/GraphCMS data provider for react-admin
36 lines (34 loc) • 958 B
text/typescript
import { TypeKind } from 'graphql';
import isRequired from './isRequired';
describe('isRequired', () => {
it('returns the correct type for SCALAR types', () => {
expect(isRequired({ name: 'foo', kind: TypeKind.SCALAR })).toEqual(false);
});
it('returns the correct type for NON_NULL types', () => {
expect(
isRequired({
kind: TypeKind.NON_NULL,
ofType: { name: 'foo', kind: TypeKind.SCALAR }
})
).toEqual(true);
});
it('returns the correct type for LIST types', () => {
expect(
isRequired({
kind: TypeKind.LIST,
ofType: { name: 'foo', kind: TypeKind.SCALAR }
})
).toEqual(false);
});
it('returns the correct type for NON_NULL LIST types', () => {
expect(
isRequired({
kind: TypeKind.NON_NULL,
ofType: {
kind: TypeKind.LIST,
ofType: { name: 'foo', kind: TypeKind.SCALAR }
}
})
).toEqual(true);
});
});