diff --git a/packages/backend/src/serializers/step.js b/packages/backend/src/serializers/step.js new file mode 100644 index 00000000..8f40856f --- /dev/null +++ b/packages/backend/src/serializers/step.js @@ -0,0 +1,15 @@ +const stepSerializer = (step) => { + return { + id: step.id, + type: step.type, + key: step.key, + appKey: step.appKey, + iconUrl: step.iconUrl, + webhookUrl: step.webhookUrl, + status: step.status, + position: step.position, + parameters: step.parameters, + }; +}; + +export default stepSerializer; diff --git a/packages/backend/src/serializers/step.test.js b/packages/backend/src/serializers/step.test.js new file mode 100644 index 00000000..4ddf918c --- /dev/null +++ b/packages/backend/src/serializers/step.test.js @@ -0,0 +1,27 @@ +import { describe, it, expect, beforeEach } from 'vitest'; +import { createStep } from '../../test/factories/step'; +import stepSerializer from './step'; + +describe('stepSerializer', () => { + let step; + + beforeEach(async () => { + step = await createStep(); + }); + + it('should return step data', async () => { + const expectedPayload = { + id: step.id, + type: step.type, + key: step.key, + appKey: step.appKey, + iconUrl: step.iconUrl, + webhookUrl: step.webhookUrl, + status: step.status, + position: step.position, + parameters: step.parameters, + }; + + expect(stepSerializer(step)).toEqual(expectedPayload); + }); +});