mirror of
https://github.com/Unleash/unleash.git
synced 2025-09-05 17:53:12 +02:00
Feat: test feature events schema
This commit is contained in:
parent
69c878a40f
commit
c7375a7b7b
76
src/lib/openapi/spec/feature-events-schema.test.ts
Normal file
76
src/lib/openapi/spec/feature-events-schema.test.ts
Normal file
@ -0,0 +1,76 @@
|
||||
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();
|
||||
});
|
Loading…
Reference in New Issue
Block a user