Skip to content

Commit

Permalink
more tests
Browse files Browse the repository at this point in the history
  • Loading branch information
brendanbond committed Mar 25, 2024
1 parent 4c5ff59 commit 9d049c5
Showing 1 changed file with 69 additions and 4 deletions.
73 changes: 69 additions & 4 deletions src/process/normalize/__tests__/normalize.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,21 +5,21 @@ import { normalizeProcessSync } from '../';
import { generateProcessorContext } from '../../__tests__/fixtures/util';

it('Should normalize a time component with a valid time value that doees not match dataFormat', async () => {
const timeField: TimeComponent = {
const timeComp: TimeComponent = {
type: 'time',
key: 'time',
label: 'Time',
input: true,
dataFormat: 'HH:mm:ss'
};
const data = { time: '12:00' };
const context = generateProcessorContext(timeField, data);
const context = generateProcessorContext(timeComp, data);
normalizeProcessSync(context);
expect(context.data).to.deep.equal({time: '12:00:00'});
});

it('Should normalize a select boxes component with an incorrect data model', () => {
const selectBoxesField: SelectBoxesComponent = {
const selectBoxesComp: SelectBoxesComponent = {
type: 'selectboxes',
key: 'selectBoxes',
label: 'Select Boxes',
Expand All @@ -33,7 +33,72 @@ it('Should normalize a select boxes component with an incorrect data model', ()
const data = {
selectBoxes: ''
};
const context = generateProcessorContext(selectBoxesField, data);
const context = generateProcessorContext(selectBoxesComp, data);
normalizeProcessSync(context);
expect(context.data).to.deep.equal({selectBoxes: {}});
});

it('Should normalize an email component value', () => {
const emailComp = {
type: 'email',
key: 'email',
input: true,
label: 'Email'
};
const data = {
email: '[email protected]'
};
const context = generateProcessorContext(emailComp, data);
normalizeProcessSync(context);
expect(context.data).to.deep.equal({email: '[email protected]'});
});

it('Should normalize a radio component with a string value', () => {
const radioComp = {
type: 'radio',
key: 'radio',
input: true,
label: 'Radio',
values: [
{
label: 'Yes',
value: 'true',
},
{
label: 'No',
value: 'false',
}
]
};
const data = {
radio: 'true'
};
const context = generateProcessorContext(radioComp, data);
normalizeProcessSync(context);
expect(context.data).to.deep.equal({radio: true});
});

it('Should normalize a radio component value with a number', () => {
const radioComp = {
type: 'radio',
key: 'radio',
input: true,
label: 'Radio',
values: [
{
label: 'Yes',
value: '1',
},
{
label: 'No',
value: '0',
}
]
};
const data = {
radio: '0'
};
const context = generateProcessorContext(radioComp, data);
normalizeProcessSync(context);
expect(context.data).to.deep.equal({radio: 0});
});

0 comments on commit 9d049c5

Please sign in to comment.