mirror of
https://github.com/Unleash/unleash.git
synced 2025-01-06 00:07:44 +01:00
77 lines
2.4 KiB
TypeScript
77 lines
2.4 KiB
TypeScript
|
import { validateSchema } from '../validate';
|
||
|
import {
|
||
|
FeatureEventsSchema,
|
||
|
featureEventsSchema,
|
||
|
} from './feature-events-schema';
|
||
|
|
||
|
test('featureEventsSchema', () => {
|
||
|
const data: FeatureEventsSchema = {
|
||
|
toggleName: 'my-feature',
|
||
|
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(featureEventsSchema.$id, data)).toBeUndefined();
|
||
|
});
|
||
|
|
||
|
test('featureEventsSchema types', () => {
|
||
|
const data: FeatureEventsSchema = {
|
||
|
toggleName: 'my-feature',
|
||
|
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(featureEventsSchema.$id, data)).not.toBeUndefined();
|
||
|
});
|