Skip to content
Snippets Groups Projects
Commit 3875277b authored by Jan Zickermann's avatar Jan Zickermann
Browse files

OZG-5413 intelliform: Fix number of files

parent 2e89628e
No related branches found
No related tags found
No related merge requests found
...@@ -29,19 +29,14 @@ import de.ozgcloud.eingang.common.formdata.FormData; ...@@ -29,19 +29,14 @@ import de.ozgcloud.eingang.common.formdata.FormData;
import de.ozgcloud.eingang.semantik.enginebased.FilesMapperHelper; import de.ozgcloud.eingang.semantik.enginebased.FilesMapperHelper;
@Component @Component
class AfmAttachedFilesMapper implements AfmEngineBasedMapper { class AfmFileCountMapper implements AfmEngineBasedMapper {
@Override @Override
public FormData parseFormData(FormData formData) { public FormData parseFormData(FormData formData) {
var formDataBuilder = formData.toBuilder(); return formData.toBuilder()
FilesMapperHelper.getAttachedFileGroups(formData) .numberOfRepresentations(formData.getRepresentations().size())
.ifPresent(fileGroups -> formDataBuilder .numberOfAttachments(FilesMapperHelper.countAttachedFiles(formData.getAttachments()))
.attachments(fileGroups) .build();
.numberOfAttachments(FilesMapperHelper.countAttachedFiles(fileGroups)));
FilesMapperHelper.getRepresentations(formData)
.ifPresent(representations -> formDataBuilder.representations(representations).numberOfRepresentations(representations.size()));
return FilesMapperHelper.removeProcessedData(formDataBuilder.build());
} }
} }
...@@ -103,7 +103,6 @@ public class IntelliFormRepresentationAdapter { ...@@ -103,7 +103,6 @@ public class IntelliFormRepresentationAdapter {
Map.of( Map.of(
HEADER_FIELD, createHeaderMap(document) HEADER_FIELD, createHeaderMap(document)
).entrySet().stream() ).entrySet().stream()
).collect(ORDERED_MAP_ENTRY_COLLECTOR)) ).collect(ORDERED_MAP_ENTRY_COLLECTOR))
.build(); .build();
} }
......
...@@ -26,44 +26,40 @@ package de.ozgcloud.eingang.semantik.enginebased.afm; ...@@ -26,44 +26,40 @@ package de.ozgcloud.eingang.semantik.enginebased.afm;
import static org.assertj.core.api.Assertions.*; import static org.assertj.core.api.Assertions.*;
import java.util.List; import java.util.List;
import java.util.Map;
import de.ozgcloud.eingang.common.formdata.FormData; import de.ozgcloud.eingang.common.formdata.FormData;
import de.ozgcloud.eingang.common.formdata.FormDataTestFactory; import de.ozgcloud.eingang.common.formdata.FormDataTestFactory;
import de.ozgcloud.eingang.common.formdata.IncomingFileGroup; import de.ozgcloud.eingang.common.formdata.IncomingFileGroup;
import de.ozgcloud.eingang.common.formdata.IncomingFileGroupTestFactory; import de.ozgcloud.eingang.common.formdata.IncomingFileGroupTestFactory;
import de.ozgcloud.eingang.common.formdata.IncomingFileTestFactory; import de.ozgcloud.eingang.common.formdata.IncomingFileTestFactory;
import de.ozgcloud.eingang.semantik.enginebased.FilesMapperHelper;
import de.ozgcloud.eingang.semantik.enginebased.afm.AfmAttachedFilesMapper;
import org.junit.jupiter.api.Nested; import org.junit.jupiter.api.Nested;
import org.junit.jupiter.api.Test; import org.junit.jupiter.api.Test;
import org.mockito.InjectMocks; import org.mockito.InjectMocks;
import org.mockito.Spy; import org.mockito.Spy;
class AfmAttachedFilesMapperTest { class AfmFileCountMapperTest {
@Spy @Spy
@InjectMocks @InjectMocks
private AfmAttachedFilesMapper mapper; private AfmFileCountMapper mapper;
private IncomingFileGroup attachmentWithMultipleFiles = IncomingFileGroupTestFactory.createBuilder() private final IncomingFileGroup attachmentWithMultipleFiles = IncomingFileGroupTestFactory.createBuilder()
.name("anotherAttachment") .name("anotherAttachment")
.clearFiles() .clearFiles()
.files(List.of(IncomingFileTestFactory.create(), IncomingFileTestFactory.create())) .files(List.of(IncomingFileTestFactory.create(), IncomingFileTestFactory.create()))
.build(); .build();
private FormData formData = FormDataTestFactory.createBuilder() private final FormData formData = FormDataTestFactory.createBuilder()
.clearAttachments() .clearAttachments()
.formData(Map.of(FilesMapperHelper.FIELD_NAME_MAPPED_FILES, .attachments(List.of(IncomingFileGroupTestFactory.create(), attachmentWithMultipleFiles))
Map.of(FilesMapperHelper.ATTACHMENTS, List.of(IncomingFileGroupTestFactory.create(), attachmentWithMultipleFiles))))
.build(); .build();
@Nested @Nested
class TestParseFormData { class TestParseFormData {
@Test @Test
void shouldMapAttachments() { void shouldKeepAttachments() {
var parsedFormData = parseFormData(); var parsedFormData = parseFormData();
assertThat(parsedFormData.getAttachments()).hasSize(2); assertThat(parsedFormData.getAttachments()).hasSize(2);
...@@ -79,7 +75,7 @@ class AfmAttachedFilesMapperTest { ...@@ -79,7 +75,7 @@ class AfmAttachedFilesMapperTest {
} }
@Test @Test
void shouldMapRepresentations() { void shouldKeepRepresentations() {
var parsedFormData = parseFormData(); var parsedFormData = parseFormData();
assertThat(parsedFormData.getRepresentations()).hasSize(1); assertThat(parsedFormData.getRepresentations()).hasSize(1);
...@@ -92,13 +88,6 @@ class AfmAttachedFilesMapperTest { ...@@ -92,13 +88,6 @@ class AfmAttachedFilesMapperTest {
assertThat(parsedFormData.getNumberOfRepresentations()).isEqualTo(1); assertThat(parsedFormData.getNumberOfRepresentations()).isEqualTo(1);
} }
@Test
void shouldRemoveFilesFromMap() {
var parsedFormData = parseFormData();
assertThat(parsedFormData.getFormData().get(FilesMapperHelper.FIELD_NAME_MAPPED_FILES)).isNull();
}
private FormData parseFormData() { private FormData parseFormData() {
return mapper.parseFormData(formData); return mapper.parseFormData(formData);
} }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment