feat: Add app config serializer

This commit is contained in:
Faruk AYDIN
2024-03-07 14:11:00 +01:00
parent 3d6847a3a2
commit 79a792ac62
3 changed files with 44 additions and 0 deletions

View File

@@ -0,0 +1,15 @@
const appConfigSerializer = (appConfig) => {
return {
id: appConfig.id,
key: appConfig.key,
allowCustomConnection: appConfig.allowCustomConnection,
shared: appConfig.shared,
disabled: appConfig.disabled,
canConnect: appConfig.canConnect,
canCustomConnect: appConfig.canCustomConnect,
createdAt: appConfig.createdAt.getTime(),
updatedAt: appConfig.updatedAt.getTime(),
};
};
export default appConfigSerializer;

View File

@@ -0,0 +1,27 @@
import { describe, it, expect, beforeEach } from 'vitest';
import { createAppConfig } from '../../test/factories/app-config';
import appConfigSerializer from './app-config';
describe('appConfig serializer', () => {
let appConfig;
beforeEach(async () => {
appConfig = await createAppConfig();
});
it('should return app config data', async () => {
const expectedPayload = {
id: appConfig.id,
key: appConfig.key,
allowCustomConnection: appConfig.allowCustomConnection,
shared: appConfig.shared,
disabled: appConfig.disabled,
canConnect: appConfig.canConnect,
canCustomConnect: appConfig.canCustomConnect,
createdAt: appConfig.createdAt.getTime(),
updatedAt: appConfig.updatedAt.getTime(),
};
expect(appConfigSerializer(appConfig)).toEqual(expectedPayload);
});
});

View File

@@ -3,6 +3,7 @@ import roleSerializer from './role.js';
import permissionSerializer from './permission.js';
import samlAuthProviderSerializer from './saml-auth-provider.ee.js';
import appAuthClientSerializer from './app-auth-client.js';
import appConfigSerializer from './app-config.js';
import flowSerializer from './flow.js';
import stepSerializer from './step.js';
import appSerializer from './app.js';
@@ -18,6 +19,7 @@ const serializers = {
Permission: permissionSerializer,
SamlAuthProvider: samlAuthProviderSerializer,
AppAuthClient: appAuthClientSerializer,
AppConfig: appConfigSerializer,
Flow: flowSerializer,
Step: stepSerializer,
App: appSerializer,