From e15ce680c19c6fe7545d75d78dca11e8a08dff0d Mon Sep 17 00:00:00 2001 From: OZGCloud <ozgcloud@mgm-tp.com> Date: Wed, 26 Jun 2024 21:30:45 +0200 Subject: [PATCH] OZG-5835 read and pass formId --- .../ozgcloud/formcycle/formdata/FormData.java | 2 ++ .../formdata/OzgCloudFormDataMapper.java | 1 + .../formdata/PluginFormDataAdapter.java | 2 +- .../formdata/FormDataTestFactory.java | 3 +++ .../formdata/OzgCloudFormDataMapperTest.java | 7 +++++++ .../formdata/PluginFormDataAdapterTest.java | 21 +++++++++++-------- 6 files changed, 26 insertions(+), 10 deletions(-) diff --git a/src/main/java/de/ozgcloud/formcycle/formdata/FormData.java b/src/main/java/de/ozgcloud/formcycle/formdata/FormData.java index 927d281..0f9b306 100644 --- a/src/main/java/de/ozgcloud/formcycle/formdata/FormData.java +++ b/src/main/java/de/ozgcloud/formcycle/formdata/FormData.java @@ -39,6 +39,8 @@ import lombok.Singular; public class FormData { private final String requestId = UUID.randomUUID().toString(); + + private long formId; private String organisationsEinheitId; private String formName; diff --git a/src/main/java/de/ozgcloud/formcycle/formdata/OzgCloudFormDataMapper.java b/src/main/java/de/ozgcloud/formcycle/formdata/OzgCloudFormDataMapper.java index 5cac566..abca97a 100644 --- a/src/main/java/de/ozgcloud/formcycle/formdata/OzgCloudFormDataMapper.java +++ b/src/main/java/de/ozgcloud/formcycle/formdata/OzgCloudFormDataMapper.java @@ -124,6 +124,7 @@ public class OzgCloudFormDataMapper { FormCycleFormHeader buildHeader(FormData formData) { FormCycleFormHeader.Builder builder = FormCycleFormHeader.newBuilder() .setRequestId(formData.getRequestId()) + .setFormId(Long.toString(formData.getFormId())) .setReceivedAt(ZonedDateTime.now().toString()) .setOrganisationsEinheitId(formData.getOrganisationsEinheitId()); Optional.ofNullable(formData.getFormName()).ifPresent(builder::setFormName); diff --git a/src/main/java/de/ozgcloud/formcycle/formdata/PluginFormDataAdapter.java b/src/main/java/de/ozgcloud/formcycle/formdata/PluginFormDataAdapter.java index 4361bf1..bbb9fbd 100644 --- a/src/main/java/de/ozgcloud/formcycle/formdata/PluginFormDataAdapter.java +++ b/src/main/java/de/ozgcloud/formcycle/formdata/PluginFormDataAdapter.java @@ -68,8 +68,8 @@ public class PluginFormDataAdapter { var formFields = buildFormData(); Set<String> uploadFieldNames = getUploadFieldNames(); - var formDataBuilder = FormData.builder() + .formId(environmentData.getProject().getId()) .formName(getFormName()) .organisationsEinheitId(organisationsEinheitId) .fieldData(formFields) diff --git a/src/test/java/de/ozgcloud/formcycle/formdata/FormDataTestFactory.java b/src/test/java/de/ozgcloud/formcycle/formdata/FormDataTestFactory.java index 4365b28..7054470 100644 --- a/src/test/java/de/ozgcloud/formcycle/formdata/FormDataTestFactory.java +++ b/src/test/java/de/ozgcloud/formcycle/formdata/FormDataTestFactory.java @@ -30,6 +30,8 @@ import de.ozgcloud.formcycle.attachment.FormcycleAttachmentTestFactory; public class FormDataTestFactory { + public static final long FORM_ID = 1; + public static final String FORM_ID_STR = String.valueOf(FORM_ID); public static final String FORM_NAME = "formular"; public static final String ORGANISATIONS_EINHEIT_ID = "12345"; public static final String ATTACHMENT_ID = "file.pdf"; @@ -44,6 +46,7 @@ public class FormDataTestFactory { public static FormData.FormDataBuilder createBuilder() { return FormData.builder() + .formId(FORM_ID) .formName(FORM_NAME) .organisationsEinheitId(ORGANISATIONS_EINHEIT_ID) .fieldData(FIELD_DATA) diff --git a/src/test/java/de/ozgcloud/formcycle/formdata/OzgCloudFormDataMapperTest.java b/src/test/java/de/ozgcloud/formcycle/formdata/OzgCloudFormDataMapperTest.java index b7865e0..b3b2eb2 100644 --- a/src/test/java/de/ozgcloud/formcycle/formdata/OzgCloudFormDataMapperTest.java +++ b/src/test/java/de/ozgcloud/formcycle/formdata/OzgCloudFormDataMapperTest.java @@ -366,6 +366,13 @@ class OzgCloudFormDataMapperTest { assertThat(ozgFormDataHeader.getReceivedAt()).isNotNull(); } + @Test + void shouldSetFormId() { + var ozgFormDataHeader = mapper.buildHeader(formData); + + assertThat(ozgFormDataHeader.getFormId()).isEqualTo(FORM_ID_STR); + } + @Test void shouldSetFormName() { var ozgFormDataHeader = mapper.buildHeader(formData); diff --git a/src/test/java/de/ozgcloud/formcycle/formdata/PluginFormDataAdapterTest.java b/src/test/java/de/ozgcloud/formcycle/formdata/PluginFormDataAdapterTest.java index 8343e16..0b45353 100644 --- a/src/test/java/de/ozgcloud/formcycle/formdata/PluginFormDataAdapterTest.java +++ b/src/test/java/de/ozgcloud/formcycle/formdata/PluginFormDataAdapterTest.java @@ -81,6 +81,9 @@ class PluginFormDataAdapterTest { private static final String UPLOAD_FIELD_NAME = "upload"; private final String ATTACHMENT_UUID = UUID.randomUUID().toString(); + @Mock + private Projekt project; + private FormNode formNode = FormNodeTestFactory.create(); @BeforeEach @@ -92,6 +95,8 @@ class PluginFormDataAdapterTest { doReturn(Set.of(FormDataTestFactory.ATTACHMENT_ID)).when(adapter).getAttachmentNames(any()); doReturn(Set.of(ATTACHMENT_UUID)).when(adapter).getAttachmentUuids(any()); doNothing().when(adapter).addServiceKonto(any()); + when(project.getId()).thenReturn(FormDataTestFactory.FORM_ID); + when(environmentData.getProject()).thenReturn(project); } @Test @@ -108,6 +113,13 @@ class PluginFormDataAdapterTest { verify(adapter).getUploadFieldNames(); } + @Test + void shouldSetFormId() { + var result = adapter.readFormData(); + + assertThat(result.getFormId()).isEqualTo(FormDataTestFactory.FORM_ID); + } + @Test void shouldSetFormName() { var result = adapter.readFormData(); @@ -358,15 +370,6 @@ class PluginFormDataAdapterTest { @Mock private FormFieldMetaData formFieldMetaData; - private Map<String, Map<String, String>> valueOptionsMap = Map.of(PluginDataTestFactory.FIELD_VALUE, - Map.of(PluginFormDataAdapter.TEXT_KEY, PluginDataTestFactory.TEXT_MAP_VALUE)); - - @BeforeEach - void setup() { - // when(formFieldMetaData.getType()).thenReturn(EFormFieldTyp.SELECT); - // when(formDataAdapter.getFieldMetaData(anyString(), anyBoolean())).thenReturn(formFieldMetaData); - } - @DisplayName("should return input when") @ParameterizedTest(name = "value = \"{0}\"") @NullAndEmptySource -- GitLab