Skip to content

Commit fc466b0

Browse files
committed
Fikset feil på tester. Lagt til test. Fikset route for merge av filer. Lagt til midlertidig konsoll logging for å følge språk valg.
1 parent 57d9348 commit fc466b0

File tree

5 files changed

+68
-5
lines changed

5 files changed

+68
-5
lines changed

packages/fyllut-backend/src/services/documents/applicationService.ts

+4-2
Original file line numberDiff line numberDiff line change
@@ -42,14 +42,16 @@ const createPdf = async (
4242
logger.warn(`Language code "${language}" is not supported. Language code will be defaulted to "nb".`);
4343
}
4444

45-
language = localizationUtils.getLanguageCodeAsIso639_1(language);
45+
console.log(`Language "${language}" requested`);
46+
const languageCode = localizationUtils.getLanguageCodeAsIso639_1(language.toLowerCase());
47+
console.log(`LanguageCode "${languageCode}" to use`);
4648

4749
const translate = (text: string, textReplacements?: I18nTranslationReplacements) =>
4850
translationUtils.translateWithTextReplacements({
4951
translations,
5052
originalText: text,
5153
params: textReplacements,
52-
currentLanguage: language,
54+
currentLanguage: languageCode,
5355
});
5456

5557
const html = createHtmlFromSubmission(form, submission, submissionMethod, translate, language);

packages/fyllut-backend/src/services/documents/documentsService.test.ts

+58
Original file line numberDiff line numberDiff line change
@@ -100,4 +100,62 @@ describe('[endpoint] documents', () => {
100100
expect(skjemabyggingproxyScope.isDone()).toBe(true);
101101
expect(mergePdfScope.isDone()).toBe(true);
102102
}, 10000);
103+
104+
it('Create front page and application - english', async () => {
105+
vi.spyOn(forstesideUtils, 'genererFoerstesideData').mockImplementation(
106+
() =>
107+
({
108+
foerstesidetype: 'ETTERSENDELSE',
109+
navSkjemaId: 'NAV 10.10.10',
110+
spraakkode: 'en',
111+
overskriftstittel: 'Tittel',
112+
arkivtittel: 'Tittel',
113+
tema: 'HJE',
114+
}) as ForstesideRequestBody,
115+
);
116+
117+
const forstesidePdf = readFileSync(filePathForsteside);
118+
const soknadPdf = readFileSync(filePathSoknad);
119+
const mergedPdf = readFileSync(filePathMerged);
120+
const encodedForstesidedPdf = forstesidePdf.toString('base64');
121+
const encodedSoknadPdf = soknadPdf.toString('base64');
122+
123+
const recipientsMock = nock(formsApiUrl).get('/v1/recipients').reply(200, []);
124+
const generateFileMock = nock(skjemabyggingProxyUrl!)
125+
.post('/foersteside')
126+
.reply(200, { foersteside: encodedForstesidedPdf });
127+
const skjemabyggingproxyScope = nock(process.env.SKJEMABYGGING_PROXY_URL as string)
128+
.post('/exstream')
129+
.reply(200, { data: { result: [{ content: { data: encodedSoknadPdf } }] } });
130+
131+
const mergePdfScope = nock(process.env.GOTENBERG_URL_EN as string)
132+
.intercept('/forms/pdfengines/merge', 'POST', (body) => {
133+
return body != null;
134+
})
135+
.reply(200, mergedPdf, { 'content-type': 'application/pdf' });
136+
137+
const req = mockRequest({
138+
headers: {
139+
AzureAccessToken: '',
140+
},
141+
body: {
142+
form: JSON.stringify({
143+
title: formTitle,
144+
components: [],
145+
properties: { mottaksadresseId: 'mottaksadresseId', path: '12345', skjemanummer: 'NAV 12.34-56' },
146+
}),
147+
submissionMethod: 'paper',
148+
language: 'EN',
149+
submission: JSON.stringify({ data: {} }),
150+
translations: JSON.stringify({}),
151+
},
152+
});
153+
154+
await documents.coverPageAndApplication(req, mockResponse(), mockNext());
155+
156+
expect(recipientsMock.isDone()).toBe(true);
157+
expect(generateFileMock.isDone()).toBe(true);
158+
expect(skjemabyggingproxyScope.isDone()).toBe(true);
159+
expect(mergePdfScope.isDone()).toBe(true);
160+
}, 10000);
103161
});

packages/fyllut-backend/src/services/documents/documentsService.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,7 @@ const coverPageAndApplication = async (props: CoverPageAndApplicationProps) => {
7676
const mergedFile = await mergeFiles(
7777
coverPageResponse.navSkjemaId,
7878
coverPageResponse.overskriftstittel,
79-
coverPageResponse.spraakkode,
79+
language,
8080
documents,
8181
{ pdfa: true, pdfua: true },
8282
);

packages/fyllut-backend/src/services/documents/gotenbergService.ts

+2-1
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ export const mergeFiles = async (
2323
formData.append('files', buffer, `file${index}.pdf`);
2424
}
2525
});
26+
formData.append('merge', 'true');
2627
// Add Gotenberg-specific options
2728
formData.append('pdfa', options.pdfa ? 'PDF/A-2b' : '');
2829
formData.append('pdfua', options.pdfua ? 'true' : '');
@@ -42,7 +43,7 @@ export const mergeFiles = async (
4243

4344
// Hvordan sette språk? En engelsk og en norsk Gotenberg installasjon?
4445
logger.info(`Skal kalle Gotenberg for å merge filer`);
45-
return await callGotenberg(language, '/forms/pdfengines/merge', formData);
46+
return await callGotenberg(language, '/forms/libreoffice/convert', formData);
4647
};
4748

4849
const formatPDFDate = (date: Date) => {

packages/fyllut-backend/src/test/test.env

+3-1
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,9 @@ NORG2_URL=https://norg2.unittest.nav.no
1313
SEND_INN_TOKEN_X_CLIENT_ID=test-gcp:soknad:send-inn
1414
FORMS_API_URL=https://forms-api-test.nav.no
1515
GOTENBERG_URL=https://convert-to-pdf.intern.dev.nav.no
16-
//GOTENBERG_URL=http://127.0.0.1:3000
16+
# GOTENBERG_URL=http://127.0.0.1:3000
17+
GOTENBERG_URL_EN=https://convert-to-pdf-en.intern.dev.nav.no
18+
# GOTENBERG_URL_EN=http://127.0.0.1:3000
1719

1820
# FYLLUT_BACKEND_LOGLEVEL=debug
1921

0 commit comments

Comments
 (0)