feat: Introduce flow serializer
This commit is contained in:
44
packages/backend/src/serializers/flow.test.js
Normal file
44
packages/backend/src/serializers/flow.test.js
Normal file
@@ -0,0 +1,44 @@
|
||||
import { describe, it, expect, beforeEach } from 'vitest';
|
||||
import { createFlow } from '../../test/factories/flow';
|
||||
import flowSerializer from './flow';
|
||||
import stepSerializer from './step';
|
||||
import { createStep } from '../../test/factories/step';
|
||||
|
||||
describe('flowSerializer', () => {
|
||||
let flow, stepOne, stepTwo;
|
||||
|
||||
beforeEach(async () => {
|
||||
flow = await createFlow();
|
||||
|
||||
stepOne = await createStep({
|
||||
flowId: flow.id,
|
||||
type: 'trigger',
|
||||
});
|
||||
|
||||
stepTwo = await createStep({
|
||||
flowId: flow.id,
|
||||
type: 'action',
|
||||
});
|
||||
});
|
||||
|
||||
it('should return flow data', async () => {
|
||||
const expectedPayload = {
|
||||
id: flow.id,
|
||||
name: flow.name,
|
||||
active: flow.active,
|
||||
status: flow.status,
|
||||
};
|
||||
|
||||
expect(flowSerializer(flow)).toEqual(expectedPayload);
|
||||
});
|
||||
|
||||
it('should return flow data with the steps', async () => {
|
||||
flow.steps = [stepOne, stepTwo];
|
||||
|
||||
const expectedPayload = {
|
||||
steps: [stepSerializer(stepOne), stepSerializer(stepTwo)],
|
||||
};
|
||||
|
||||
expect(flowSerializer(flow)).toMatchObject(expectedPayload);
|
||||
});
|
||||
});
|
Reference in New Issue
Block a user