From 287ac95c98b0c929c6ffa1a0a084b7d0297b8d44 Mon Sep 17 00:00:00 2001 From: OZGCloud <ozgcloud@mgm-tp.com> Date: Sun, 14 Apr 2024 09:04:03 +0200 Subject: [PATCH] OZG-5422 add client to the realmrole --- .../keycloak/realm/KeycloakRealmMapper.java | 4 ++++ .../realm/KeycloakRealmMapperTest.java | 18 ++++++++++++++++++ .../OzgCloudKeycloakRealmSpecTestFactory.java | 13 ++++++++++++- 3 files changed, 34 insertions(+), 1 deletion(-) diff --git a/ozgcloud-keycloak-operator/src/main/java/de/ozgcloud/operator/keycloak/realm/KeycloakRealmMapper.java b/ozgcloud-keycloak-operator/src/main/java/de/ozgcloud/operator/keycloak/realm/KeycloakRealmMapper.java index 81adfc5..06ceef8 100644 --- a/ozgcloud-keycloak-operator/src/main/java/de/ozgcloud/operator/keycloak/realm/KeycloakRealmMapper.java +++ b/ozgcloud-keycloak-operator/src/main/java/de/ozgcloud/operator/keycloak/realm/KeycloakRealmMapper.java @@ -26,7 +26,9 @@ package de.ozgcloud.operator.keycloak.realm; import java.util.ArrayList; import java.util.Collection; import java.util.Collections; +import java.util.HashMap; import java.util.List; +import java.util.Map; import java.util.Set; import java.util.stream.Collectors; @@ -70,6 +72,7 @@ interface KeycloakRealmMapper { .map(RealmRole::getName) .collect(Collectors.toList()); List<RoleRepresentation> rolerepresentationList = new ArrayList<>(roleNames.size()); + Map<String, List<RoleRepresentation>> client = new HashMap<String, List<RoleRepresentation>>(); roleNames.forEach(roleName -> { @@ -78,6 +81,7 @@ interface KeycloakRealmMapper { rolerepresentationList.add(newRepresentation); } ); roles.setRealm(rolerepresentationList); + roles.setClient(client); return roles; } diff --git a/ozgcloud-keycloak-operator/src/test/java/de/ozgcloud/operator/keycloak/realm/KeycloakRealmMapperTest.java b/ozgcloud-keycloak-operator/src/test/java/de/ozgcloud/operator/keycloak/realm/KeycloakRealmMapperTest.java index ddb2e9a..f341f6a 100644 --- a/ozgcloud-keycloak-operator/src/test/java/de/ozgcloud/operator/keycloak/realm/KeycloakRealmMapperTest.java +++ b/ozgcloud-keycloak-operator/src/test/java/de/ozgcloud/operator/keycloak/realm/KeycloakRealmMapperTest.java @@ -89,4 +89,22 @@ class KeycloakRealmMapperTest { assertThat(mapped.getActionTokenGeneratedByUserLifespan()).isEqualTo(900); } + + @Test + void shouldMapRealmRoles() { + var mapped = mapper.map(OzgCloudKeycloakRealmSpecTestFactory.create()); + + assertThat(mapped.getRoles().getRealm().size()).isEqualTo(2); + } + +/* @Test + void shouldContainRealmRolesValues() { + var mapped = mapper.map(OzgCloudKeycloakRealmSpecTestFactory.create()); + var mappedRealmRoles = mapped.getRoles(); + assertThat(mappedRealmRoles.getRealm().getName()).isEqualTo("host"); + + var role = mapper.mapRole(OzgCloudKeycloakClientSpecTestFactory.ROLE1); + + assertThat(role.getName()).isEqualTo(OzgCloudKeycloakClientSpecTestFactory.ROLE_NAME_1); + }*/ } diff --git a/ozgcloud-keycloak-operator/src/test/java/de/ozgcloud/operator/keycloak/realm/OzgCloudKeycloakRealmSpecTestFactory.java b/ozgcloud-keycloak-operator/src/test/java/de/ozgcloud/operator/keycloak/realm/OzgCloudKeycloakRealmSpecTestFactory.java index fe23573..115b7b2 100644 --- a/ozgcloud-keycloak-operator/src/test/java/de/ozgcloud/operator/keycloak/realm/OzgCloudKeycloakRealmSpecTestFactory.java +++ b/ozgcloud-keycloak-operator/src/test/java/de/ozgcloud/operator/keycloak/realm/OzgCloudKeycloakRealmSpecTestFactory.java @@ -23,11 +23,21 @@ */ package de.ozgcloud.operator.keycloak.realm; +import java.util.List; + +import de.ozgcloud.operator.keycloak.realm.OzgCloudKeycloakRealmSpec.RealmRole; + public class OzgCloudKeycloakRealmSpecTestFactory { public final static String DISPLAY_NAME = "TestDisplayName"; public final static boolean KEEP_AFTER_DELETE = false; + public static final String ROLE_NAME_1 = "RoleName1"; + public static final RealmRole ROLE1 = RealmRole.builder().name(ROLE_NAME_1).build(); + public static final String ROLE_NAME_2 = "RoleName2"; + public static final RealmRole ROLE2 = RealmRole.builder().name(ROLE_NAME_2).build(); + public static final List<RealmRole> ROLES = List.of(ROLE1,ROLE2); + public static OzgCloudKeycloakRealmSpec create() { return createBuilder().build(); } @@ -35,6 +45,7 @@ public class OzgCloudKeycloakRealmSpecTestFactory { public static OzgCloudKeycloakRealmSpec.OzgCloudKeycloakRealmSpecBuilder createBuilder() { return OzgCloudKeycloakRealmSpec.builder() .keepAfterDelete(KEEP_AFTER_DELETE) - .displayName(DISPLAY_NAME); + .displayName(DISPLAY_NAME) + .realmRoles(ROLES); } } -- GitLab