mirror of
https://github.com/Unleash/unleash.git
synced 2024-11-01 19:07:38 +01:00
78 lines
2.3 KiB
TypeScript
78 lines
2.3 KiB
TypeScript
|
import { validateSchema } from '../validate';
|
||
|
import { EventsSchema } from './events-schema';
|
||
|
|
||
|
test('eventsSchema', () => {
|
||
|
const data: EventsSchema = {
|
||
|
version: 1,
|
||
|
events: [
|
||
|
{
|
||
|
id: 899,
|
||
|
type: 'feature-created',
|
||
|
createdBy: 'user@company.com',
|
||
|
createdAt: '2022-05-31T13:32:20.560Z',
|
||
|
data: {
|
||
|
name: 'new-feature',
|
||
|
description: 'Toggle description',
|
||
|
type: 'release',
|
||
|
project: 'my-project',
|
||
|
stale: false,
|
||
|
variants: [],
|
||
|
createdAt: '2022-05-31T13:32:20.547Z',
|
||
|
lastSeenAt: null,
|
||
|
impressionData: true,
|
||
|
},
|
||
|
preData: null,
|
||
|
tags: [],
|
||
|
featureName: 'new-feature',
|
||
|
project: 'my-project',
|
||
|
environment: null,
|
||
|
},
|
||
|
],
|
||
|
};
|
||
|
|
||
|
expect(
|
||
|
validateSchema('#/components/schemas/eventsSchema', data),
|
||
|
).toBeUndefined();
|
||
|
});
|
||
|
|
||
|
test('eventsSchema types', () => {
|
||
|
const data: EventsSchema = {
|
||
|
version: 1,
|
||
|
events: [
|
||
|
{
|
||
|
// @ts-expect-error
|
||
|
id: '1',
|
||
|
type: 'feature-created',
|
||
|
createdBy: 'user@company.com',
|
||
|
createdAt: '2022-05-31T13:32:20.560Z',
|
||
|
data: {
|
||
|
name: 'new-feature',
|
||
|
description: 'Toggle description',
|
||
|
type: 'release',
|
||
|
project: 'my-project',
|
||
|
stale: false,
|
||
|
variants: [],
|
||
|
createdAt: '2022-05-31T13:32:20.547Z',
|
||
|
lastSeenAt: null,
|
||
|
impressionData: true,
|
||
|
},
|
||
|
preData: null,
|
||
|
tags: [
|
||
|
{
|
||
|
type: '',
|
||
|
// @ts-expect-error
|
||
|
value: 1,
|
||
|
},
|
||
|
],
|
||
|
featureName: 'new-feature',
|
||
|
project: 'my-project',
|
||
|
environment: null,
|
||
|
},
|
||
|
],
|
||
|
};
|
||
|
|
||
|
expect(
|
||
|
validateSchema('#/components/schemas/eventsSchema', data),
|
||
|
).not.toBeUndefined();
|
||
|
});
|