Fix tests
This commit is contained in:
@ -3,7 +3,7 @@ import { Meta } from '@storybook/react';
|
||||
import { ModalWrapper } from '@/spreadsheet-import/components/ModalWrapper';
|
||||
import { Providers } from '@/spreadsheet-import/components/Providers';
|
||||
import { MatchColumnsStep } from '@/spreadsheet-import/steps/components/MatchColumnsStep/MatchColumnsStep';
|
||||
import { mockRsiValues } from '@/spreadsheet-import/tests/mockRsiValues.test';
|
||||
import { mockRsiValues } from '@/spreadsheet-import/tests/mockRsiValues';
|
||||
|
||||
const meta: Meta<typeof MatchColumnsStep> = {
|
||||
title: 'Modules/SpreadsheetImport/MatchColumnsStep',
|
||||
|
||||
@ -6,7 +6,7 @@ import { SelectHeaderStep } from '@/spreadsheet-import/steps/components/SelectHe
|
||||
import {
|
||||
headerSelectionTableFields,
|
||||
mockRsiValues,
|
||||
} from '@/spreadsheet-import/tests/mockRsiValues.test';
|
||||
} from '@/spreadsheet-import/tests/mockRsiValues';
|
||||
|
||||
const meta: Meta<typeof SelectHeaderStep> = {
|
||||
title: 'Modules/SpreadsheetImport/SelectHeaderStep',
|
||||
|
||||
@ -3,7 +3,7 @@ import { Meta } from '@storybook/react';
|
||||
import { ModalWrapper } from '@/spreadsheet-import/components/ModalWrapper';
|
||||
import { Providers } from '@/spreadsheet-import/components/Providers';
|
||||
import { SelectSheetStep } from '@/spreadsheet-import/steps/components/SelectSheetStep/SelectSheetStep';
|
||||
import { mockRsiValues } from '@/spreadsheet-import/tests/mockRsiValues.test';
|
||||
import { mockRsiValues } from '@/spreadsheet-import/tests/mockRsiValues';
|
||||
|
||||
const meta: Meta<typeof SelectSheetStep> = {
|
||||
title: 'Modules/SpreadsheetImport/SelectSheetStep',
|
||||
|
||||
@ -3,7 +3,7 @@ import { Meta } from '@storybook/react';
|
||||
import { ModalWrapper } from '@/spreadsheet-import/components/ModalWrapper';
|
||||
import { Providers } from '@/spreadsheet-import/components/Providers';
|
||||
import { UploadStep } from '@/spreadsheet-import/steps/components/UploadStep/UploadStep';
|
||||
import { mockRsiValues } from '@/spreadsheet-import/tests/mockRsiValues.test';
|
||||
import { mockRsiValues } from '@/spreadsheet-import/tests/mockRsiValues';
|
||||
|
||||
const meta: Meta<typeof UploadStep> = {
|
||||
title: 'Modules/SpreadsheetImport/UploadStep',
|
||||
|
||||
@ -6,7 +6,7 @@ import { ValidationStep } from '@/spreadsheet-import/steps/components/Validation
|
||||
import {
|
||||
editableTableInitialData,
|
||||
mockRsiValues,
|
||||
} from '@/spreadsheet-import/tests/mockRsiValues.test';
|
||||
} from '@/spreadsheet-import/tests/mockRsiValues';
|
||||
|
||||
const meta: Meta<typeof ValidationStep> = {
|
||||
title: 'Modules/SpreadsheetImport/ValidationStep',
|
||||
|
||||
171
front/src/modules/spreadsheet-import/tests/mockRsiValues.ts
Normal file
171
front/src/modules/spreadsheet-import/tests/mockRsiValues.ts
Normal file
@ -0,0 +1,171 @@
|
||||
import { defaultSpreadsheetImportProps } from '@/spreadsheet-import/provider/components/SpreadsheetImport';
|
||||
import { Fields, SpreadsheetOptions } from '@/spreadsheet-import/types';
|
||||
|
||||
const fields = [
|
||||
{
|
||||
icon: null,
|
||||
label: 'Name',
|
||||
key: 'name',
|
||||
alternateMatches: ['first name', 'first'],
|
||||
fieldType: {
|
||||
type: 'input',
|
||||
},
|
||||
example: 'Stephanie',
|
||||
validations: [
|
||||
{
|
||||
rule: 'required',
|
||||
errorMessage: 'Name is required',
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
icon: null,
|
||||
label: 'Surname',
|
||||
key: 'surname',
|
||||
alternateMatches: ['second name', 'last name', 'last'],
|
||||
fieldType: {
|
||||
type: 'input',
|
||||
},
|
||||
example: 'McDonald',
|
||||
validations: [
|
||||
{
|
||||
rule: 'unique',
|
||||
errorMessage: 'Last name must be unique',
|
||||
level: 'info',
|
||||
},
|
||||
],
|
||||
description: 'Family / Last name',
|
||||
},
|
||||
{
|
||||
icon: null,
|
||||
label: 'Age',
|
||||
key: 'age',
|
||||
alternateMatches: ['years'],
|
||||
fieldType: {
|
||||
type: 'input',
|
||||
},
|
||||
example: '23',
|
||||
validations: [
|
||||
{
|
||||
rule: 'regex',
|
||||
value: '^\\d+$',
|
||||
errorMessage: 'Age must be a number',
|
||||
level: 'warning',
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
icon: null,
|
||||
label: 'Team',
|
||||
key: 'team',
|
||||
alternateMatches: ['department'],
|
||||
fieldType: {
|
||||
type: 'select',
|
||||
options: [
|
||||
{ label: 'Team One', value: 'one' },
|
||||
{ label: 'Team Two', value: 'two' },
|
||||
],
|
||||
},
|
||||
example: 'Team one',
|
||||
validations: [
|
||||
{
|
||||
rule: 'required',
|
||||
errorMessage: 'Team is required',
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
icon: null,
|
||||
label: 'Is manager',
|
||||
key: 'is_manager',
|
||||
alternateMatches: ['manages'],
|
||||
fieldType: {
|
||||
type: 'checkbox',
|
||||
booleanMatches: {},
|
||||
},
|
||||
example: 'true',
|
||||
},
|
||||
] as Fields<string>;
|
||||
|
||||
const mockComponentBehaviourForTypes = <T extends string>(
|
||||
props: SpreadsheetOptions<T>,
|
||||
) => props;
|
||||
|
||||
export const mockRsiValues = mockComponentBehaviourForTypes({
|
||||
...defaultSpreadsheetImportProps,
|
||||
fields: fields,
|
||||
onSubmit: async () => {
|
||||
return;
|
||||
},
|
||||
isOpen: true,
|
||||
onClose: () => {
|
||||
return;
|
||||
},
|
||||
uploadStepHook: async (data) => {
|
||||
await new Promise((resolve) => {
|
||||
setTimeout(() => resolve(data), 4000);
|
||||
});
|
||||
return data;
|
||||
},
|
||||
selectHeaderStepHook: async (hData, data) => {
|
||||
await new Promise((resolve) => {
|
||||
setTimeout(
|
||||
() =>
|
||||
resolve({
|
||||
headerValues: hData,
|
||||
data,
|
||||
}),
|
||||
4000,
|
||||
);
|
||||
});
|
||||
return {
|
||||
headerValues: hData,
|
||||
data,
|
||||
};
|
||||
},
|
||||
// Runs after column matching and on entry change, more performant
|
||||
matchColumnsStepHook: async (data) => {
|
||||
await new Promise((resolve) => {
|
||||
setTimeout(() => resolve(data), 4000);
|
||||
});
|
||||
return data;
|
||||
},
|
||||
});
|
||||
|
||||
export const editableTableInitialData = [
|
||||
{
|
||||
name: 'Hello',
|
||||
surname: 'Hello',
|
||||
age: '123123',
|
||||
team: 'one',
|
||||
is_manager: true,
|
||||
},
|
||||
{
|
||||
name: 'Hello',
|
||||
surname: 'Hello',
|
||||
age: '12312zsas3',
|
||||
team: 'two',
|
||||
is_manager: true,
|
||||
},
|
||||
{
|
||||
name: 'Whooaasdasdawdawdawdiouasdiuasdisdhasd',
|
||||
surname: 'Hello',
|
||||
age: '123123',
|
||||
team: undefined,
|
||||
is_manager: false,
|
||||
},
|
||||
{
|
||||
name: 'Goodbye',
|
||||
surname: 'Goodbye',
|
||||
age: '111',
|
||||
team: 'two',
|
||||
is_manager: true,
|
||||
},
|
||||
];
|
||||
|
||||
export const headerSelectionTableFields = [
|
||||
['text', 'num', 'select', 'bool'],
|
||||
['Hello', '123', 'one', 'true'],
|
||||
['Hello', '123', 'one', 'true'],
|
||||
['Hello', '123', 'one', 'true'],
|
||||
];
|
||||
Reference in New Issue
Block a user