Skip to content
Snippets Groups Projects
Commit a7bd64bf authored by OZGCloud's avatar OZGCloud
Browse files

Merge branch 'master' into ozg-3938-enable-grpc-tls

parents e93310b6 89980b1c
Branches
Tags
No related merge requests found
Showing
with 342 additions and 79 deletions
......@@ -17,7 +17,7 @@
<properties>
<vorgang-manager.version>2.7.0</vorgang-manager.version>
<nachrichten-manager.version>2.7.0</nachrichten-manager.version>
<api-lib.version>0.8.0</api-lib.version>
<api-lib.version>0.9.0-SNAPSHOT</api-lib.version>
</properties>
<dependencies>
......
......@@ -40,6 +40,7 @@ import de.ozgcloud.bescheid.Bescheid.SendBy;
import de.ozgcloud.bescheid.attacheditem.AttachedItemService;
import de.ozgcloud.bescheid.binaryfile.BinaryFileService;
import de.ozgcloud.bescheid.common.callcontext.CurrentUserService;
import de.ozgcloud.bescheid.common.user.UserProfileService;
import de.ozgcloud.bescheid.nachricht.NachrichtService;
import de.ozgcloud.bescheid.vorgang.VorgangId;
import de.ozgcloud.command.Command;
......@@ -94,6 +95,7 @@ class BescheidEventListener {
private final ApplicationEventPublisher eventPublisher;
private final CurrentUserService userService;
private final UserProfileService userProfileService;
private final BescheidFeatureProperties bescheidFeatureProperties;
@EventListener(condition = IS_CREATE_BESCHEID)
......@@ -177,7 +179,7 @@ class BescheidEventListener {
Optional.ofNullable(eventBody.get(GENEHMIGT_BODYKEY))
.map(Object::toString).map(Boolean::valueOf)
.ifPresentOrElse(builder::genehmigt, () -> builder.genehmigt(true));
builder.createFor(userService.getUserProfile());
builder.createFor(userProfileService.getUserProfile());
return builder.build();
}
......
/*
* Copyright (C) 2024 Das Land Schleswig-Holstein vertreten durch den
* Ministerpräsidenten des Landes Schleswig-Holstein
* Staatskanzlei
* Abteilung Digitalisierung und zentrales IT-Management der Landesregierung
*
* 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.
*/
package de.ozgcloud.bescheid;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import de.ozgcloud.apilib.common.command.OzgCloudCommandService;
import de.ozgcloud.apilib.common.command.grpc.CommandMapper;
import de.ozgcloud.apilib.common.command.grpc.GrpcOzgCloudCommandService;
import de.ozgcloud.bescheid.common.callcontext.BescheidManagerCallContextProvider;
import de.ozgcloud.vorgang.grpc.command.CommandServiceGrpc;
import net.devh.boot.grpc.client.inject.GrpcClient;
@Configuration
public class BescheidManagerConfiguration {
@GrpcClient("command-manager")
private CommandServiceGrpc.CommandServiceBlockingStub commandServiceStub;
@Bean("bescheid_OzgCloudCommandService")
OzgCloudCommandService grpcOzgCloudCommandService(CommandMapper commandMapper, BescheidManagerCallContextProvider contextProvider) {
return new GrpcOzgCloudCommandService(commandServiceStub, commandMapper, contextProvider,
GrpcOzgCloudCommandService.DEFAULT_COMMAND_REQUEST_THRESHOLD_MILLIS);
}
}
......@@ -2,7 +2,7 @@ package de.ozgcloud.bescheid;
import java.time.LocalDate;
import de.ozgcloud.bescheid.common.callcontext.UserProfile;
import de.ozgcloud.bescheid.common.user.UserProfile;
import de.ozgcloud.bescheid.vorgang.VorgangId;
import lombok.Builder;
import lombok.Getter;
......
......@@ -12,7 +12,7 @@ import org.springframework.stereotype.Service;
import de.ozgcloud.bescheid.attacheditem.AttachedItem;
import de.ozgcloud.bescheid.attacheditem.AttachedItemService;
import de.ozgcloud.bescheid.attributes.ClientAttributeService;
import de.ozgcloud.bescheid.common.callcontext.CurrentUserService;
import de.ozgcloud.bescheid.common.user.UserProfileService;
import de.ozgcloud.bescheid.nachricht.NachrichtService;
import de.ozgcloud.bescheid.vorgang.Vorgang;
import de.ozgcloud.bescheid.vorgang.VorgangId;
......@@ -33,7 +33,7 @@ class BescheidService {
private final VorgangService vorgangService;
private final AttachedItemService attachedItemService;
private final NachrichtService nachrichtService;
private final CurrentUserService currentUserService;
private final UserProfileService currentUserService;
private final ClientAttributeService bescheidClientAttributeService;
private final BuildProperties buildProperties;
private final Optional<BescheidRemoteService> remoteService;
......
......@@ -35,6 +35,8 @@ import java.util.stream.Collectors;
import org.apache.commons.collections.MapUtils;
import org.apache.commons.lang3.ArrayUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Service;
import de.ozgcloud.apilib.common.command.OzgCloudCommand;
......@@ -45,11 +47,9 @@ import de.ozgcloud.bescheid.BescheidCallContextAttachingInterceptor;
import de.ozgcloud.bescheid.vorgang.VorgangId;
import de.ozgcloud.command.Command;
import de.ozgcloud.common.errorhandling.TechnicalException;
import lombok.RequiredArgsConstructor;
import lombok.extern.log4j.Log4j2;
@Service
@RequiredArgsConstructor
@Log4j2
public class AttachedItemService {
......@@ -61,9 +61,13 @@ public class AttachedItemService {
private static final Predicate<String> notExpectedSendByValue = sendBy -> !ArrayUtils.contains(Bescheid.SendBy.values(), sendBy);
private final OzgCloudCommandService commandService;
private final VorgangAttachedItemRemoteService remoteService;
private final CommandMapper commandMapper;
@Autowired
@Qualifier("bescheid_OzgCloudCommandService")
private OzgCloudCommandService commandService;
@Autowired
private VorgangAttachedItemRemoteService remoteService;
@Autowired
private CommandMapper commandMapper;
public Optional<AttachedItem> findBescheidItem(String vorgangId) {
return remoteService.findBescheidDraft(vorgangId);
......
/*
* Copyright (C) 2024 Das Land Schleswig-Holstein vertreten durch den
* Ministerpräsidenten des Landes Schleswig-Holstein
* Staatskanzlei
* Abteilung Digitalisierung und zentrales IT-Management der Landesregierung
*
* 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.
*/
package de.ozgcloud.bescheid.common.callcontext;
import java.util.Optional;
import org.springframework.stereotype.Component;
import de.ozgcloud.apilib.common.callcontext.CallContext;
import de.ozgcloud.apilib.common.callcontext.OzgCloudCallContextProvider;
import de.ozgcloud.apilib.user.OzgCloudUserId;
import de.ozgcloud.bescheid.BescheidCallContextAttachingInterceptor;
import lombok.RequiredArgsConstructor;
@Component
@RequiredArgsConstructor
public class BescheidManagerCallContextProvider implements OzgCloudCallContextProvider {
private final CurrentUserService currentUserService;
@Override
public CallContext provideContext() {
var callContextBuilder = CallContext.builder().clientName(BescheidCallContextAttachingInterceptor.BESCHEID_MANAGER_CLIENT_NAME);
getUserId().ifPresent(callContextBuilder::userId);
return callContextBuilder.build();
}
Optional<OzgCloudUserId> getUserId() {
return currentUserService.getUser().getUserId().map(OzgCloudUserId::from);
}
}
......@@ -35,10 +35,7 @@ import org.springframework.security.core.context.SecurityContext;
import org.springframework.security.core.context.SecurityContextHolder;
import org.springframework.stereotype.Service;
import de.ozgcloud.apilib.user.OzgCloudUserId;
import de.ozgcloud.apilib.user.OzgCloudUserProfileService;
import de.ozgcloud.command.Command;
import de.ozgcloud.common.errorhandling.TechnicalException;
import lombok.RequiredArgsConstructor;
@RequiredArgsConstructor
......@@ -46,21 +43,11 @@ import lombok.RequiredArgsConstructor;
public class CurrentUserService {
private final AuthenticationTrustResolver trustResolver;
private final Optional<OzgCloudUserProfileService> userProfileService;
private final UserProfileMapper mapper;
public CallContextUser getUser() {
return findUser().orElseThrow(() -> new IllegalStateException("No authenticated User found"));
}
public UserProfile getUserProfile() {
var service = userProfileService.orElseThrow(() -> new IllegalStateException("No connection to user-manager configured."));
return getUser().getUserId().map(OzgCloudUserId::from)
.map(service::getById)
.map(mapper::mapProfile).orElseThrow(() -> new TechnicalException("Unknown UserId or cannot load user profile."));
}
public Optional<CallContextUser> findUser() {
return findTrustedAuthentication()
.map(this::mapToCallContextUser)
......
package de.ozgcloud.bescheid.common.callcontext;
import de.ozgcloud.bescheid.UserId;
import lombok.Builder;
import lombok.Getter;
@Builder
@Getter
public class UserProfile {
private UserId id;
private String firstName;
private String lastName;
private String email;
}
package de.ozgcloud.bescheid.common.callcontext;
import org.mapstruct.Mapper;
import de.ozgcloud.apilib.user.OzgCloudUserId;
import de.ozgcloud.apilib.user.OzgCloudUserProfile;
import de.ozgcloud.bescheid.UserId;
@Mapper
public interface UserProfileMapper {
UserProfile mapProfile(OzgCloudUserProfile userProfile);
default UserId mapUserId(OzgCloudUserId id) {
return UserId.from(id.toString());
}
}
/*
* Copyright (C) 2024 Das Land Schleswig-Holstein vertreten durch den
* Ministerpräsidenten des Landes Schleswig-Holstein
* Staatskanzlei
* Abteilung Digitalisierung und zentrales IT-Management der Landesregierung
*
* 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.
*/
package de.ozgcloud.bescheid.common.user;
import de.ozgcloud.bescheid.UserId;
import lombok.Builder;
import lombok.Getter;
@Builder
@Getter
public class UserProfile {
private UserId id;
private String firstName;
private String lastName;
private String email;
}
/*
* Copyright (C) 2024 Das Land Schleswig-Holstein vertreten durch den
* Ministerpräsidenten des Landes Schleswig-Holstein
* Staatskanzlei
* Abteilung Digitalisierung und zentrales IT-Management der Landesregierung
*
* 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.
*/
package de.ozgcloud.bescheid.common.user;
import org.mapstruct.Mapper;
import de.ozgcloud.apilib.user.OzgCloudUserId;
import de.ozgcloud.apilib.user.OzgCloudUserProfile;
import de.ozgcloud.bescheid.UserId;
@Mapper
public interface UserProfileMapper {
UserProfile mapProfile(OzgCloudUserProfile userProfile);
default UserId mapUserId(OzgCloudUserId id) {
return UserId.from(id.toString());
}
}
/*
* Copyright (C) 2024 Das Land Schleswig-Holstein vertreten durch den
* Ministerpräsidenten des Landes Schleswig-Holstein
* Staatskanzlei
* Abteilung Digitalisierung und zentrales IT-Management der Landesregierung
*
* 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.
*/
package de.ozgcloud.bescheid.common.user;
import java.util.Optional;
import org.springframework.stereotype.Service;
import de.ozgcloud.apilib.user.OzgCloudUserId;
import de.ozgcloud.apilib.user.OzgCloudUserProfileService;
import de.ozgcloud.bescheid.common.callcontext.CurrentUserService;
import de.ozgcloud.common.errorhandling.TechnicalException;
import lombok.RequiredArgsConstructor;
@Service
@RequiredArgsConstructor
public class UserProfileService {
private final CurrentUserService currentUserService;
private final Optional<OzgCloudUserProfileService> userProfileService;
private final UserProfileMapper mapper;
public UserProfile getUserProfile() {
var service = userProfileService.orElseThrow(() -> new IllegalStateException("No connection to user-manager configured."));
return currentUserService.getUser().getUserId().map(OzgCloudUserId::from)
.map(service::getById)
.map(mapper::mapProfile).orElseThrow(() -> new TechnicalException("Unknown UserId or cannot load user profile."));
}
}
package de.ozgcloud.bescheid.common.callcontext;
/*
* Copyright (C) 2024 Das Land Schleswig-Holstein vertreten durch den
* Ministerpräsidenten des Landes Schleswig-Holstein
* Staatskanzlei
* Abteilung Digitalisierung und zentrales IT-Management der Landesregierung
*
* 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.
*/
package de.ozgcloud.bescheid.common.user;
import java.util.UUID;
......
......@@ -8,6 +8,8 @@ import java.util.Optional;
import org.apache.commons.collections.MapUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Service;
import de.ozgcloud.apilib.common.command.OzgCloudCommand;
......@@ -19,12 +21,10 @@ import de.ozgcloud.common.errorhandling.TechnicalException;
import freemarker.template.Configuration;
import freemarker.template.Template;
import freemarker.template.TemplateException;
import lombok.RequiredArgsConstructor;
import lombok.extern.log4j.Log4j2;
@Service
@Log4j2
@RequiredArgsConstructor
public class NachrichtService {
public static final String SEND_POSTFACH_NACHRICHT_ORDER = "SEND_POSTFACH_NACHRICHT";
......@@ -35,10 +35,15 @@ public class NachrichtService {
static final String FIELD_MAIL_BODY = "mailBody";
static final String FIELD_ATTACHMENTS = "attachments";
private final NachrichtRemoteService remoteService;
private final Configuration freemarkerCfg;
private final OzgCloudCommandService commandService;
private final CommandMapper commandMapper;
@Autowired
private NachrichtRemoteService remoteService;
@Autowired
private Configuration freemarkerCfg;
@Autowired
@Qualifier("bescheid_OzgCloudCommandService")
private OzgCloudCommandService commandService;
@Autowired
private CommandMapper commandMapper;
static final String SUBJECT = "Ihr Antrag";
......
......@@ -30,7 +30,7 @@ import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import de.ozgcloud.bescheid.Bescheid;
import de.ozgcloud.bescheid.BescheidRemoteService;
import de.ozgcloud.bescheid.BescheidRequest;
import de.ozgcloud.bescheid.common.callcontext.UserProfile;
import de.ozgcloud.bescheid.common.user.UserProfile;
import de.ozgcloud.bescheid.smartdocuments.SmartDocumentsBescheidRemoteService.SmartDocumentsResponse.SmartDocumentDocument;
import de.ozgcloud.bescheid.smartdocuments.SmartDocumentsBescheidRemoteService.SmartDocumentsResponse.SmartDocumentFile;
import de.ozgcloud.bescheid.smartdocuments.SmartDocumentsRequest.CustomerData;
......
package de.ozgcloud.bescheid.vorgang;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Service;
import de.ozgcloud.apilib.common.command.OzgCloudCommand;
import de.ozgcloud.apilib.common.command.OzgCloudCommandService;
import de.ozgcloud.apilib.common.command.grpc.CommandMapper;
import lombok.NonNull;
import lombok.RequiredArgsConstructor;
@Service("bescheid_VorgangService")
@RequiredArgsConstructor
public class VorgangService {
static final String VORGANG_BESCHEIDEN = "VORGANG_BESCHEIDEN";
private final VorgangRemoteService remoteService;
private final OzgCloudCommandService commandService;
private final CommandMapper commandMapper;
@Autowired
private VorgangRemoteService remoteService;
@Autowired
@Qualifier("bescheid_OzgCloudCommandService")
private OzgCloudCommandService commandService;
@Autowired
private CommandMapper commandMapper;
public Vorgang getById(@NonNull VorgangId id) {
return remoteService.getById(id);
......
......@@ -31,6 +31,8 @@ import java.util.Optional;
import org.apache.commons.collections.MapUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Service;
import de.ozgcloud.apilib.common.command.OzgCloudCommand;
......@@ -42,10 +44,8 @@ import de.ozgcloud.bescheid.attacheditem.AttachedItem;
import de.ozgcloud.bescheid.attacheditem.AttachedItemService;
import de.ozgcloud.command.Command;
import de.ozgcloud.common.errorhandling.TechnicalException;
import lombok.RequiredArgsConstructor;
@Service
@RequiredArgsConstructor
public class DocumentService {
public static final String DOCUMENT_ITEM_NAME = "Document";
......@@ -56,10 +56,15 @@ public class DocumentService {
public static final String FIELD_DOCUMENT_FILE = "documentFile";
public static final String FIELD_NACHRICHT_TEXT = "nachrichtText";
private final AttachedItemService attachedItemService;
private final OzgCloudCommandService commandService;
private final CommandMapper commandMapper;
private final DocumentMapper documentMapper;
@Autowired
private AttachedItemService attachedItemService;
@Autowired
@Qualifier("bescheid_OzgCloudCommandService")
private OzgCloudCommandService commandService;
@Autowired
private CommandMapper commandMapper;
@Autowired
private DocumentMapper documentMapper;
public String createBescheidDocument(Command command) {
return createBescheidDocument(command, buildItemMap(command));
......
......@@ -15,7 +15,8 @@ import de.ozgcloud.apilib.common.command.OzgCloudCommandService;
import de.ozgcloud.apilib.common.command.grpc.CommandMapper;
import de.ozgcloud.bescheid.attacheditem.AttachedItemService;
import de.ozgcloud.bescheid.common.callcontext.CurrentUserService;
import de.ozgcloud.bescheid.common.callcontext.UserProfile;
import de.ozgcloud.bescheid.common.user.UserProfile;
import de.ozgcloud.bescheid.common.user.UserProfileService;
import de.ozgcloud.command.Command;
import de.ozgcloud.command.CommandCreatedEventTestFactory;
import de.ozgcloud.command.CommandTestFactory;
......@@ -34,6 +35,8 @@ class BescheidEventListenerITCase {
@MockBean
private CurrentUserService userService;
@MockBean
private UserProfileService userProfileService;
@MockBean
private OzgCloudCommandService commandService;
@MockBean
private CommandMapper commandMapper;
......@@ -45,7 +48,7 @@ class BescheidEventListenerITCase {
@BeforeEach
void init() {
when(userService.getUserProfile()).thenReturn(userProfile);
when(userProfileService.getUserProfile()).thenReturn(userProfile);
}
@Nested
......
......@@ -27,8 +27,9 @@ import de.ozgcloud.bescheid.attacheditem.AttachedItemService;
import de.ozgcloud.bescheid.attacheditem.AttachedItemTestFactory;
import de.ozgcloud.bescheid.binaryfile.BinaryFileService;
import de.ozgcloud.bescheid.common.callcontext.CurrentUserService;
import de.ozgcloud.bescheid.common.callcontext.UserProfile;
import de.ozgcloud.bescheid.common.callcontext.UserProfileTestFactory;
import de.ozgcloud.bescheid.common.user.UserProfile;
import de.ozgcloud.bescheid.common.user.UserProfileService;
import de.ozgcloud.bescheid.common.user.UserProfileTestFactory;
import de.ozgcloud.bescheid.nachricht.NachrichtService;
import de.ozgcloud.command.Command;
import de.ozgcloud.command.CommandCreatedEventTestFactory;
......@@ -61,6 +62,8 @@ class BescheidEventListenerTest {
private ApplicationEventPublisher eventPublisher;
@Mock
private CurrentUserService userService;
@Mock
private UserProfileService userProfileService;
@Nested
class TestOnCreateBescheidCommand {
......@@ -215,7 +218,7 @@ class BescheidEventListenerTest {
@Test
void shouldContainUserProfile() {
UserProfile user = UserProfileTestFactory.create();
when(userService.getUserProfile()).thenReturn(user);
when(userProfileService.getUserProfile()).thenReturn(user);
var request = listener.createRequest(COMMAND);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment