Skip to content

Commit

Permalink
🔨 Skriver migreringscript for vedlegg
Browse files Browse the repository at this point in the history
Co-authored-by: Tor Idland <[email protected]>
  • Loading branch information
thomasrognes and tidnav committed Oct 18, 2023
1 parent 2bc05b4 commit 7a73c38
Show file tree
Hide file tree
Showing 3 changed files with 46 additions and 7 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,9 @@
*
*/
import { RequiredVedlegg } from '../../types/SoknadContext';
import { SoknadVedlegg } from '../../types/Soknad';

export function migrerVedlegg(requiredVedlegg: RequiredVedlegg[]): RequiredVedlegg[] {
export function migrerRequiredVedlegg(requiredVedlegg: RequiredVedlegg[]): RequiredVedlegg[] {
return requiredVedlegg.map((vedlegg) => {
const type = vedlegg.type as string;
if (type === 'avbruttStudie') {
Expand All @@ -19,3 +20,12 @@ export function migrerVedlegg(requiredVedlegg: RequiredVedlegg[]): RequiredVedle
return vedlegg;
});
}

export function migrerVedlegg(vedlegg?: SoknadVedlegg): SoknadVedlegg | undefined {
if (vedlegg) {
let nyeVedlegg = { ...vedlegg, AVBRUTT_STUDIE: vedlegg.avbruttStudie };
// @ts-ignore
delete nyeVedlegg.avbruttStudie;
return nyeVedlegg;
}
}
35 changes: 31 additions & 4 deletions lib/utils/migrerVedlegg.test.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
import { RequiredVedlegg } from '../../types/SoknadContext';
import { migrerVedlegg } from './migrerVedlegg';
import { migrerRequiredVedlegg, migrerVedlegg } from './migrerRequiredVedlegg';
import { SoknadVedlegg } from '../../types/Soknad';

const ikkeMigrertRequiredVedlegg: RequiredVedlegg[] = [
{ type: 'LØNN_OG_ANDRE_GODER', description: 'Vedlegg for å motta lønn eller andre goder' },
Expand Down Expand Up @@ -34,13 +35,13 @@ const migrertRequiredVedlegg: RequiredVedlegg[] = [
describe('migrering av påkrevde vedlegg', () => {
it('Skal returnere korrekt type på avbrutt studie ', function () {
expect(
migrerVedlegg([{ type: 'avbruttStudie', description: 'Vedlegg for avbrutt studie' }])
migrerRequiredVedlegg([{ type: 'avbruttStudie', description: 'Vedlegg for avbrutt studie' }])
).toEqual([{ type: 'AVBRUTT_STUDIE', description: 'Vedlegg for avbrutt studie' }]);
});

it('Skal returnere korrekt type på manuelle barn', function () {
expect(
migrerVedlegg([
migrerRequiredVedlegg([
{
type: 'barn-c3c21f06-52ef-4ee8-aee9-23b537e388af',
description: 'Vedlegg for Iren Panikk',
Expand All @@ -52,6 +53,32 @@ describe('migrering av påkrevde vedlegg', () => {
});

it('Skal returnere korrekt type på resterende felter', function () {
expect(migrerVedlegg(ikkeMigrertRequiredVedlegg)).toEqual(migrertRequiredVedlegg);
expect(migrerRequiredVedlegg(ikkeMigrertRequiredVedlegg)).toEqual(migrertRequiredVedlegg);
});
});

describe('migrering av vedlegg', () => {
it('Skal returnere korrekt key på avbrutt studie', function () {
const ikkeMigrertVedlegg: SoknadVedlegg = {
avbruttStudie: [],
OMSORGSSTØNAD: [],
UTLANDSSTØNAD: [],
ANNET: [],
LÅN: [],
SYKESTIPEND: [],
LØNN_OG_ANDRE_GODER: [],
};

const migrertVedlegg: SoknadVedlegg = {
AVBRUTT_STUDIE: [],
OMSORGSSTØNAD: [],
UTLANDSSTØNAD: [],
ANNET: [],
LÅN: [],
SYKESTIPEND: [],
LØNN_OG_ANDRE_GODER: [],
};

expect(migrerVedlegg(ikkeMigrertVedlegg)).toEqual(migrertVedlegg);
});
});
6 changes: 4 additions & 2 deletions pages/[step].tsx
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ import { Steg0 } from 'components/pageComponents/standard/Steg0/Steg0';
import * as classes from './step.module.css';
import { FormattedMessage, useIntl } from 'react-intl';
import { logger } from '@navikt/aap-felles-utils';
import { migrerVedlegg } from '../lib/utils/migrerVedlegg';
import { migrerRequiredVedlegg, migrerVedlegg } from '../lib/utils/migrerRequiredVedlegg';

interface PageProps {
søker: SokerOppslagState;
Expand Down Expand Up @@ -231,10 +231,12 @@ export const getServerSideProps = beskyttetSide(
};
}

const migrertRequiredVedlegg = migrerVedlegg(mellomlagretSøknad.requiredVedlegg);
const migrertRequiredVedlegg = migrerRequiredVedlegg(mellomlagretSøknad.requiredVedlegg);
const migrertVedlegg = migrerVedlegg(mellomlagretSøknad.søknad?.vedlegg);

const updatedMellomLagretSøknad = {
...mellomlagretSøknad,
søknad: { ...mellomlagretSøknad.søknad, vedlegg: migrertVedlegg },
requiredVedlegg: migrertRequiredVedlegg,
};

Expand Down

0 comments on commit 7a73c38

Please sign in to comment.