diff --git a/src/main/resources/application-itcase.yml b/src/main/resources/application-itcase.yml new file mode 100644 index 0000000000000000000000000000000000000000..8e4ad25a51eb5a58ef569956d8bd676a837565a0 --- /dev/null +++ b/src/main/resources/application-itcase.yml @@ -0,0 +1,9 @@ +ozgcloud: + muk: + server: http://localhost:8089 +logging: + level: + de.ozgcloud.MukPostfachApplication: DEBUG + de.ozgcloud.de.ozgcloud.nachrichten.postfach.muk.RestLoggingInterceptor: DEBUG + org.springframework.http: DEBUG + org.springframework.web.client: DEBUG \ No newline at end of file diff --git a/src/main/resources/application-local.yml b/src/main/resources/application-local.yml new file mode 100644 index 0000000000000000000000000000000000000000..75a34ec075094421a61d63d5d736d33f08716870 --- /dev/null +++ b/src/main/resources/application-local.yml @@ -0,0 +1,11 @@ +ozgcloud: + muk: + server: http://localhost:8081 + user-name: "user" + password: "123456789" +logging: + level: + de.ozgcloud.MukPostfachApplication: DEBUG + de.ozgcloud.de.ozgcloud.nachrichten.postfach.muk.RestLoggingInterceptor: DEBUG + org.springframework.http: DEBUG + org.springframework.web.client: DEBUG \ No newline at end of file diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml new file mode 100644 index 0000000000000000000000000000000000000000..065fffe83bf04cd7a435ee3d7a96b347b2f9379e --- /dev/null +++ b/src/main/resources/application.yml @@ -0,0 +1,3 @@ +spring: + jackson: + default-property-inclusion: NON_NULL \ No newline at end of file diff --git a/src/main/resources/log4j2-local.xml b/src/main/resources/log4j2-local.xml new file mode 100644 index 0000000000000000000000000000000000000000..6764c41bc69904ec2b1a8234b294de7b446d6e6e --- /dev/null +++ b/src/main/resources/log4j2-local.xml @@ -0,0 +1,33 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ Copyright (c) 2024. + ~ Lizenziert unter der EUPL, Version 1.2 oder - sobald + ~ diese von der Europäischen Kommission genehmigt wurden - + ~ Folgeversionen der EUPL ("Lizenz"); + ~ Sie dürfen dieses Werk ausschließlich gemäß + ~ dieser Lizenz nutzen. + ~ Eine Kopie der Lizenz finden Sie hier: + ~ + ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 + ~ + ~ Sofern nicht durch anwendbare Rechtsvorschriften + ~ gefordert oder in schriftlicher Form vereinbart, wird + ~ die unter der Lizenz verbreitete Software "so wie sie + ~ ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - + ~ ausdrücklich oder stillschweigend - verbreitet. + ~ Die sprachspezifischen Genehmigungen und Beschränkungen + ~ unter der Lizenz sind dem Lizenztext zu entnehmen. + --> +<configuration> + <Appenders> + <Console name="CONSOLE" target="SYSTEM_OUT"> + <PatternLayout pattern="[%-5level] %c{1.} %msg%n"/> + </Console> + </Appenders> + + <Loggers> + <Root level="INFO"> + <appender-ref ref="CONSOLE"/> + </Root> + </Loggers> +</configuration> \ No newline at end of file diff --git a/src/main/resources/users.yml b/src/main/resources/users.yml new file mode 100644 index 0000000000000000000000000000000000000000..dba8fab1e9245a8da1ad5a76b706c19ce6ec9d76 --- /dev/null +++ b/src/main/resources/users.yml @@ -0,0 +1,10 @@ +fileFormat: 1 +users: + # normaler Benutzer (Rolle ist implizit "USER", als "gruppe" wird ein extern generiertes Token verwendet) + - { login: "Hans.Mustermann", credentials: { passwortHash: "$2a$10$Tf2GGkPbYfZBWJZbAsMtDenMt2w6t2GQs8h5TptGZ0wcnsfUi7W26" }, gruppe: "{d0b401b8-2ef1-4a94-936a-d501b34c6569}" } + # Beispiel 3: normaler Benutzer (Rolle ist implizit "USER", als "gruppe" wird ein sprechender Name verwendet) + - { login: "Mira.Bellenbaum@musterstadt.beispiel.de", credentials: { passwortHash: "$2a$10$LjWRzJQyHQz3v2b0FDFORe44TjNGoac3gWI5MNIQ/Rg4yq4XKVnDi" }, gruppe: "12/ABC Gemeinde Musterstadt" } + # Eigenes Beispiel: User: MGM-Tester, Passwort: ep86rbseprz9twe + - { login: "MGM-Tester", credentials: { passwortHash: "$2a$12$uZA6RBFi2q8iQbIqjgsyce/YMp0j0yunir2q1uzwTtibbf.lMrNea" }, gruppe: "MGM-KOP Test" } + # Eigenes Beispiel: User: user Passwort: 123456789 + - { login: "user", credentials: { passwortHash: "$2a$12$fOgkV5PMU3itJ2r5VQq.Q.eMZdPZW5PM25xRMZ20gY6969uPs.WuC" }, gruppe: "MGM-KOP Test" } \ No newline at end of file diff --git a/src/test/java/de/ozgcloud/nachrichten/postfach/osi/OsiPostfachRemoteServiceTest.java b/src/test/java/de/ozgcloud/nachrichten/postfach/osi/OsiPostfachRemoteServiceTest.java new file mode 100644 index 0000000000000000000000000000000000000000..4b4dcffb94cd655da1fd1a894e7393f4801ea608 --- /dev/null +++ b/src/test/java/de/ozgcloud/nachrichten/postfach/osi/OsiPostfachRemoteServiceTest.java @@ -0,0 +1,58 @@ +package de.ozgcloud.nachrichten.postfach.osi; + +import static org.assertj.core.api.Assertions.*; + +import org.junit.jupiter.api.DisplayName; +import org.junit.jupiter.api.Nested; +import org.junit.jupiter.api.Test; +import org.mockito.InjectMocks; +import org.mockito.Spy; + +class OsiPostfachRemoteServiceTest { + + @Spy + @InjectMocks + private OsiPostfachRemoteService osiPostfachRemoteService; + + @DisplayName("send message") + @Nested + class TestSendMessage { + // TODO + } + + @DisplayName("get all messages") + @Nested + class TestGetAllMessages { + // TODO + } + + @DisplayName("delete message") + @Nested + class TestDeleteMessage { + // TODO + } + + @DisplayName("get postfach type") + @Nested + class TestGetPostfachType { + @DisplayName("should return") + @Test + void shouldReturn() { + var result = osiPostfachRemoteService.getPostfachType(); + + assertThat(result).isEqualTo(OsiPostfachRemoteService.POSTFACH_TYPE_OSIV2); + } + } + + @DisplayName("is reply allowed") + @Nested + class TestIsReplyAllowed { + @DisplayName("should return") + @Test + void shouldReturn() { + var result = osiPostfachRemoteService.isReplyAllowed(); + + assertThat(result).isTrue(); + } + } +} \ No newline at end of file diff --git a/src/test/resources/application-itcase.yml b/src/test/resources/application-itcase.yml new file mode 100644 index 0000000000000000000000000000000000000000..8e4ad25a51eb5a58ef569956d8bd676a837565a0 --- /dev/null +++ b/src/test/resources/application-itcase.yml @@ -0,0 +1,9 @@ +ozgcloud: + muk: + server: http://localhost:8089 +logging: + level: + de.ozgcloud.MukPostfachApplication: DEBUG + de.ozgcloud.de.ozgcloud.nachrichten.postfach.muk.RestLoggingInterceptor: DEBUG + org.springframework.http: DEBUG + org.springframework.web.client: DEBUG \ No newline at end of file