diff --git a/README.md b/README.md index 855844e9c..3fee85bd0 100644 --- a/README.md +++ b/README.md @@ -14,37 +14,37 @@ Other examples are located in the [test resources](./config-cli/src/test/resourc ## Supported features -| Feature | Since | Description | -| ------------------------------------------ | ------ | -------------------------------------------------------------------------------------------------------- | -| Create clients | 0.9.0 | Create client configuration while creating or updating realms | -| Update clients | 0.9.0 | Update client configuration while updating realms | -| Add roles | 0.9.0 | Add roles while creating or updating realms | -| Update roles | 0.9.0 | Update role properties while updating realms | -| Add composites to roles | 0.12.0 | Add role with realm-level and client-level composite roles while creating or updating realms | -| Add composites to roles | 0.12.0 | Add realm-level and client-level composite roles to existing role while creating or updating realms | -| Remove composites from roles | 0.12.0 | Remove realm-level and client-level composite roles from existing role while creating or updating realms | -| Add users | 0.9.0 | Add users (inclusive password!) while creating or updating realms | -| Add users with roles | 0.9.0 | Add users with realm-level and client-level roles while creating or updating realms | -| Update users | 0.9.0 | Update user properties (inclusive password!) while updating realms | -| Add role to user | 0.9.0 | Add realm-level and client-level roles to user while updating realm | -| Remove role from user | 0.9.0 | Remove realm-level or client-level roles from user while updating realm | -| Add authentication flows and executions | 0.9.0 | Add authentication flows and executions while creating or updating realms | -| Update authentication flows and executions | 0.9.0 | Update authentication flow properties and executions while updating realms | -| Add components | 0.9.0 | Add components while creating or updating realms | -| Update components | 0.9.0 | Update components properties while updating realms | -| Update sub-components | 0.9.0 | Add sub-components properties while creating or updating realms | -| Add groups | 0.12.0 | Add groups (inclusive subgroups!) to realm while creating or updating realms | -| Update groups | 0.12.0 | Update existing group properties and attributes while creating or updating realms | -| Remove groups | 0.12.0 | Remove existing groups while updating realms | -| Add/Remove group attributes | 0.12.0 | Add or remove group attributes in existing groups while updating realms | -| Add/Remove group roles | 0.12.0 | Add or remove roles to/from existing groups while updating realms | -| Update/Remove subgroups | 0.12.0 | Like groups, subgroups may also be added/updated and removed while updating realms | -| Add scope-mappings | 0.9.0 | Add scope-mappings while creating or updating realms | -| Add roles to scope-mappings | 0.9.0 | Add roles to existing scope-mappings while updating realms | -| Remove roles from scope-mappings | 0.9.0 | Remove roles from existing scope-mappings while updating realms | -| Add required-actions | 0.9.0 | Add required-actions while creating or updating realms | -| Update required-actions | 0.9.0 | Update properties of existing required-actions while updating realms | -| Update identity providers | 1.2.0 | Update properties of existing identity providers while updating realms | +| Feature | Since | Description | +| ------------------------------------------ | ----- | -------------------------------------------------------------------------------------------------------- | +| Create clients | 1.0.0 | Create client configuration while creating or updating realms | +| Update clients | 1.0.0 | Update client configuration while updating realms | +| Add roles | 1.0.0 | Add roles while creating or updating realms | +| Update roles | 1.0.0 | Update role properties while updating realms | +| Add composites to roles | 1.3.0 | Add role with realm-level and client-level composite roles while creating or updating realms | +| Add composites to roles | 1.3.0 | Add realm-level and client-level composite roles to existing role while creating or updating realms | +| Remove composites from roles | 1.3.0 | Remove realm-level and client-level composite roles from existing role while creating or updating realms | +| Add users | 1.0.0 | Add users (inclusive password!) while creating or updating realms | +| Add users with roles | 1.0.0 | Add users with realm-level and client-level roles while creating or updating realms | +| Update users | 1.0.0 | Update user properties (inclusive password!) while updating realms | +| Add role to user | 1.0.0 | Add realm-level and client-level roles to user while updating realm | +| Remove role from user | 1.0.0 | Remove realm-level or client-level roles from user while updating realm | +| Add authentication flows and executions | 1.0.0 | Add authentication flows and executions while creating or updating realms | +| Update authentication flows and executions | 1.0.0 | Update authentication flow properties and executions while updating realms | +| Add components | 1.0.0 | Add components while creating or updating realms | +| Update components | 1.0.0 | Update components properties while updating realms | +| Update sub-components | 1.0.0 | Add sub-components properties while creating or updating realms | +| Add groups | 1.3.0 | Add groups (inclusive subgroups!) to realm while creating or updating realms | +| Update groups | 1.3.0 | Update existing group properties and attributes while creating or updating realms | +| Remove groups | 1.3.0 | Remove existing groups while updating realms | +| Add/Remove group attributes | 1.3.0 | Add or remove group attributes in existing groups while updating realms | +| Add/Remove group roles | 1.3.0 | Add or remove roles to/from existing groups while updating realms | +| Update/Remove subgroups | 1.3.0 | Like groups, subgroups may also be added/updated and removed while updating realms | +| Add scope-mappings | 1.0.0 | Add scope-mappings while creating or updating realms | +| Add roles to scope-mappings | 1.0.0 | Add roles to existing scope-mappings while updating realms | +| Remove roles from scope-mappings | 1.0.0 | Remove roles from existing scope-mappings while updating realms | +| Add required-actions | 1.0.0 | Add required-actions while creating or updating realms | +| Update required-actions | 1.0.0 | Update properties of existing required-actions while updating realms | +| Update identity providers | 1.2.0 | Update properties of existing identity providers while updating realms | ## Compatibility matrix @@ -58,6 +58,7 @@ Other examples are located in the [test resources](./config-cli/src/test/resourc | **v1.0.x** | ✗ | ✗ | ✗ | ✓ | ✓ | | **v1.1.x** | ✗ | ✗ | ✗ | ✓ | ✓ | | **v1.2.x** | ✗ | ✗ | ✗ | ✓ | ✓ | +| **v1.3.x** | ✗ | ✗ | ✗ | ✓ | ✓ | | **master** | ✗ | ✗ | ✗ | ✓ | ✓ | - `✓` Supported diff --git a/config-cli/pom.xml b/config-cli/pom.xml deleted file mode 100644 index 94cc82197..000000000 --- a/config-cli/pom.xml +++ /dev/null @@ -1,302 +0,0 @@ - - - 4.0.0 - - - com.github.borisskert - keycloak-tool - 0.12.0-SNAPSHOT - - - config-cli - - - - org.springframework.boot - spring-boot-starter - - - - org.hibernate.validator - hibernate-validator - - - - org.keycloak - keycloak-admin-client - - - - com.fasterxml.jackson.core - jackson-databind - - - - org.jboss.resteasy - resteasy-multipart-provider - ${jboss.resteasy.version} - - - - org.jboss.resteasy - resteasy-jackson2-provider - ${jboss.resteasy.version} - - - - org.jboss.resteasy - resteasy-client - ${jboss.resteasy.version} - - - - junit - junit - - - org.hamcrest - hamcrest-all - - - org.springframework.boot - spring-boot-starter-test - test - - - - - org.springframework.boot - spring-boot-starter-web - test - - - - eu.codearte.catch-exception - catch-exception - - - - com.google.guava - guava - - - - - ${project.artifactId} - - - - org.springframework.boot - spring-boot-maven-plugin - - - - repackage - - - - - - org.apache.maven.plugins - maven-failsafe-plugin - - - **/*IT.java - - - - - - integration-test - verify - - - - - - - org.codehaus.mojo - properties-maven-plugin - 1.0.0 - - - generate-resources - - write-project-properties - - - ${project.build.testOutputDirectory}/maven.properties - - - - - - io.fabric8 - docker-maven-plugin - - - - keycloak_it:latest - - ${project.parent.basedir}/keycloakIT.Dockerfile - - - - - - - cleanup-stop-keycloak - pre-integration-test - - stop - - - true - - - - cleanup-remove-keycloak - pre-integration-test - - remove - - - all - - - - build-keycloak - pre-integration-test - - build - - - ${keycloak.version} - - - - prepare-keycloak - pre-integration-test - - start - - - - - it-keycloak - - - admin123 - admin - ERROR - - - - -b - 0.0.0.0 - --debug - - - - +docker.host.ip:docker.port:8080 - - - - http://${docker.host.ip}:${docker.port}/auth/ - 200 - - - - - - - - - - stop-keycloak - post-integration-test - - stop - - - true - - - - remove-keycloak - post-integration-test - - remove - - - all - - - - - - - org.apache.maven.plugins - maven-resources-plugin - - - copy-resources-for-integration-tests - pre-integration-test - - copy-resources - - - target/test-classes - - - src/test/resources - true - - - - - - - - org.jacoco - jacoco-maven-plugin - - - default-prepare-agent - - prepare-agent - - - - default-report - - report - - - - default-check - - check - - - - - BUNDLE - - - COMPLEXITY - COVEREDRATIO - 0.70 - - - - - - - - - - - diff --git a/config-cli/src/main/resources/application-debug.yml b/config-cli/src/main/resources/application-debug.yml deleted file mode 100644 index 9552a4c7d..000000000 --- a/config-cli/src/main/resources/application-debug.yml +++ /dev/null @@ -1,13 +0,0 @@ -logging: - level: - com.github.borisskert.keycloak.config.service.RealmImportService: debug - com.github.borisskert.keycloak.config.service.AuthenticationFlowsImportService: debug - com.github.borisskert.keycloak.config.service.ExecutionFlowsImportService: debug - com.github.borisskert.keycloak.config.service.RequiredActionsImportService: debug - com.github.borisskert.keycloak.config.service.ComponentImportService: debug - com.github.borisskert.keycloak.config.service.UserImportService: debug - com.github.borisskert.keycloak.config.service.CustomImportService: debug - com.github.borisskert.keycloak.config.service.RoleImportService: debug - com.github.borisskert.keycloak.config.service.ClientImportService: debug - com.github.borisskert.keycloak.config.service.ScopeMappingImportService: debug - com.github.borisskert.keycloak.config.service.GroupImportService: debug diff --git a/contrib/example-config/moped.json b/contrib/example-config/moped.json index c4e818401..c2916862c 100644 --- a/contrib/example-config/moped.json +++ b/contrib/example-config/moped.json @@ -76,8 +76,8 @@ "clientRole": false }, { - "name": "my_other_realm_role", - "description": "My changed other realm role", + "name": "my_second_realm_role", + "description": "My second realm role", "composite": false, "clientRole": false } @@ -91,8 +91,8 @@ "clientRole": true }, { - "name": "my_other_client_role", - "description": "My changed other moped-client role", + "name": "my_second_client_role", + "description": "My second moped-client role", "composite": false, "clientRole": true } @@ -224,5 +224,98 @@ "principalType": "SUBJECT" } } + ], + "groups": [ + { + "name": "My Group", + "attributes": { + "my added attribute": [ + "my added attribute value" + ] + }, + "realmRoles": [ + "my_realm_role" + ], + "clientRoles": { + "moped-client": [ + "my_client_role" + ] + }, + "subGroups": [ + { + "name": "My SubGroup" + } + ] + }, + { + "name": "My Added Group" + }, + { + "name": "Group with attribute", + "attributes": { + "my attribute": [ + "my attribute value" + ] + } + }, + { + "name": "Group with realm role", + "realmRoles": [ + "my_realm_role" + ] + }, + { + "name": "Group with client role", + "clientRoles": { + "moped-client": [ + "my_client_role" + ] + } + }, + { + "name": "Group with subgroup", + "subGroups": [ + { + "name": "My SubGroup" + } + ] + }, + { + "name": "Group with subgroup with realm role", + "subGroups": [ + { + "name": "My SubGroup", + "realmRoles": [ + "my_second_realm_role" + ] + } + ] + }, + { + "name": "Group with subgroup with client role", + "subGroups": [ + { + "name": "My SubGroup", + "clientRoles": { + "moped-client": [ + "my_second_client_role" + ] + } + } + ] + }, + { + "name": "Group with subgroup with subgroup", + "subGroups": [ + { + "name": "My SubGroup", + "subGroups": [ + { + "name": "My Inner SubGroup" + } + ] + } + ] + } ] } diff --git a/pom.xml b/pom.xml index 0e81816d9..b798cbd66 100644 --- a/pom.xml +++ b/pom.xml @@ -88,7 +88,6 @@ com.google.guava guava 28.2-jre - test @@ -154,6 +153,11 @@ ${testcontainers.version} test + + + com.google.guava + guava + diff --git a/src/main/java/de/adorsys/keycloak/config/repository/GroupRepository.java b/src/main/java/de/adorsys/keycloak/config/repository/GroupRepository.java index de20dfa72..f797ddaeb 100644 --- a/src/main/java/de/adorsys/keycloak/config/repository/GroupRepository.java +++ b/src/main/java/de/adorsys/keycloak/config/repository/GroupRepository.java @@ -1,6 +1,6 @@ -package com.github.borisskert.keycloak.config.repository; +package de.adorsys.keycloak.config.repository; -import com.github.borisskert.keycloak.config.util.ResponseUtil; +import de.adorsys.keycloak.config.util.ResponseUtil; import org.keycloak.admin.client.resource.GroupResource; import org.keycloak.admin.client.resource.GroupsResource; import org.keycloak.admin.client.resource.RoleMappingResource; diff --git a/src/main/java/de/adorsys/keycloak/config/service/GroupImportService.java b/src/main/java/de/adorsys/keycloak/config/service/GroupImportService.java index 6662ff6c0..d2a88dab6 100644 --- a/src/main/java/de/adorsys/keycloak/config/service/GroupImportService.java +++ b/src/main/java/de/adorsys/keycloak/config/service/GroupImportService.java @@ -1,8 +1,8 @@ -package com.github.borisskert.keycloak.config.service; +package de.adorsys.keycloak.config.service; -import com.github.borisskert.keycloak.config.model.RealmImport; -import com.github.borisskert.keycloak.config.repository.GroupRepository; -import com.github.borisskert.keycloak.config.util.CloneUtils; +import de.adorsys.keycloak.config.model.RealmImport; +import de.adorsys.keycloak.config.repository.GroupRepository; +import de.adorsys.keycloak.config.util.CloneUtils; import org.keycloak.representations.idm.GroupRepresentation; import org.slf4j.Logger; import org.slf4j.LoggerFactory; diff --git a/src/main/java/de/adorsys/keycloak/config/service/RealmImportService.java b/src/main/java/de/adorsys/keycloak/config/service/RealmImportService.java index aa4891855..10383e889 100644 --- a/src/main/java/de/adorsys/keycloak/config/service/RealmImportService.java +++ b/src/main/java/de/adorsys/keycloak/config/service/RealmImportService.java @@ -127,7 +127,6 @@ private void createRealm(RealmImport realmImport) { RealmRepresentation realmForCreation = CloneUtils.deepClone(realmImport, RealmRepresentation.class, ignoredPropertiesForCreation); realmRepository.create(realmForCreation); - realmRepository.loadRealm(realmImport.getRealm()); importUsers(realmImport); groupImportService.importGroups(realmImport); authenticationFlowsImportService.doImport(realmImport); diff --git a/src/main/resources/application-debug.yml b/src/main/resources/application-debug.yml index c1cdcf29e..d3d0a877d 100644 --- a/src/main/resources/application-debug.yml +++ b/src/main/resources/application-debug.yml @@ -1,12 +1,3 @@ logging: level: - de.adorsys.keycloak.config.service.RealmImportService: debug - de.adorsys.keycloak.config.service.AuthenticationFlowsImportService: debug - de.adorsys.keycloak.config.service.ExecutionFlowsImportService: debug - de.adorsys.keycloak.config.service.RequiredActionsImportService: debug - de.adorsys.keycloak.config.service.ComponentImportService: debug - de.adorsys.keycloak.config.service.UserImportService: debug - de.adorsys.keycloak.config.service.CustomImportService: debug - de.adorsys.keycloak.config.service.RoleImportService: debug - de.adorsys.keycloak.config.service.ClientImportService: debug - de.adorsys.keycloak.config.service.ScopeMappingImportService: debug + de.adorsys.keycloak.config.service: debug diff --git a/src/test/java/de/adorsys/keycloak/config/ImportGroupsIT.java b/src/test/java/de/adorsys/keycloak/config/ImportGroupsIT.java index 9ffb32827..b26c9aa97 100644 --- a/src/test/java/de/adorsys/keycloak/config/ImportGroupsIT.java +++ b/src/test/java/de/adorsys/keycloak/config/ImportGroupsIT.java @@ -1,33 +1,15 @@ -package com.github.borisskert.keycloak.config; - -import com.github.borisskert.keycloak.config.configuration.TestConfiguration; -import com.github.borisskert.keycloak.config.model.KeycloakImport; -import com.github.borisskert.keycloak.config.model.RealmImport; -import com.github.borisskert.keycloak.config.service.KeycloakImportProvider; -import com.github.borisskert.keycloak.config.service.KeycloakProvider; -import com.github.borisskert.keycloak.config.service.RealmImportService; -import com.github.borisskert.keycloak.config.util.KeycloakAuthentication; -import com.github.borisskert.keycloak.config.util.KeycloakRepository; -import com.github.borisskert.keycloak.config.util.ResourceLoader; +package de.adorsys.keycloak.config; + import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableMap; import org.hamcrest.MatcherAssert; import org.hamcrest.Matchers; -import org.junit.After; -import org.junit.Before; -import org.junit.Test; -import org.junit.runner.RunWith; +import org.junit.jupiter.api.Order; +import org.junit.jupiter.api.Test; import org.keycloak.admin.client.resource.GroupsResource; import org.keycloak.representations.idm.GroupRepresentation; import org.keycloak.representations.idm.RealmRepresentation; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.boot.test.context.ConfigFileApplicationContextInitializer; -import org.springframework.test.annotation.DirtiesContext; -import org.springframework.test.context.ActiveProfiles; -import org.springframework.test.context.ContextConfiguration; -import org.springframework.test.context.junit4.SpringRunner; - -import java.io.File; + import java.util.*; import static org.hamcrest.CoreMatchers.equalTo; @@ -37,99 +19,16 @@ import static org.hamcrest.core.IsNull.nullValue; import static org.junit.Assert.assertThat; -@RunWith(SpringRunner.class) -@ContextConfiguration( - classes = {TestConfiguration.class}, - initializers = {ConfigFileApplicationContextInitializer.class} -) -@ActiveProfiles("IT") -@DirtiesContext -public class ImportGroupsIT { +public class ImportGroupsIT extends AbstractImportTest { private static final String REALM_NAME = "realmWithGroups"; - @Autowired - RealmImportService realmImportService; - - @Autowired - KeycloakImportProvider keycloakImportProvider; - - @Autowired - KeycloakProvider keycloakProvider; - - @Autowired - KeycloakRepository keycloakRepository; - - @Autowired - KeycloakAuthentication keycloakAuthentication; - - KeycloakImport keycloakImport; - - @Before - public void setup() throws Exception { - File configsFolder = ResourceLoader.loadResource("import-files/groups"); - this.keycloakImport = keycloakImportProvider.readRealmImportsFromDirectory(configsFolder); - } - - @After - public void cleanup() throws Exception { - keycloakProvider.close(); - } - - @Test - public void shouldReadImports() { - assertThat(keycloakImport, is(not(nullValue()))); + ImportGroupsIT() { + this.resourcePath = "import-files/groups"; } @Test - public void integrationTests() throws Exception { - shouldCreateRealmWithGroups(); - shouldUpdateRealmAddGroup(); - shouldUpdateRealmAddGroupWithAttribute(); - shouldUpdateRealmAddGroupWithRealmRole(); - shouldUpdateRealmAddGroupWithClientRole(); - shouldUpdateRealmAddGroupWithSubGroup(); - shouldUpdateRealmAddGroupWithSubGroupWithRealmRole(); - shouldUpdateRealmAddGroupWithSubGroupWithClientRole(); - shouldUpdateRealmAddGroupWithSubGroupWithSubGroup(); - shouldUpdateRealmUpdateGroupAddAttribute(); - shouldUpdateRealmUpdateGroupAddRealmRole(); - shouldUpdateRealmUpdateGroupAddClientRole(); - shouldUpdateRealmUpdateGroupAddSubgroup(); - shouldUpdateRealmUpdateGroupAddSecondAttributeValue(); - shouldUpdateRealmUpdateGroupAddSecondAttribute(); - shouldUpdateRealmUpdateGroupChangeAttributeValue(); - shouldUpdateRealmUpdateGroupChangeAttributeKey(); - shouldUpdateRealmUpdateGroupDeleteAttribute(); - shouldUpdateRealmUpdateGroupDeleteAttributeValue(); - shouldUpdateRealmUpdateGroupAddSecondRealmRole(); - shouldUpdateRealmUpdateGroupDeleteRealmRole(); - shouldUpdateRealmUpdateGroupDeleteLastRealmRole(); - shouldUpdateRealmUpdateGroupAddSecondClientRole(); - shouldUpdateRealmUpdateGroupRemoveClientRole(); - shouldUpdateRealmUpdateGroupAddClientRolesFromSecondClient(); - shouldUpdateRealmUpdateGroupRemoveClient(); - shouldUpdateRealmUpdateGroupAddAttributeToSubGroup(); - shouldUpdateRealmUpdateGroupAddAttributeValueToSubGroup(); - shouldUpdateRealmUpdateGroupAddSecondAttributeToSubGroup(); - shouldUpdateRealmUpdateGroupRemoveAttributeValueFromSubGroup(); - shouldUpdateRealmUpdateGroupRemoveAttributeFromSubGroup(); - shouldUpdateRealmUpdateGroupAddRealmRoleToSubGroup(); - shouldUpdateRealmUpdateGroupAddSecondRealmRoleToSubGroup(); - shouldUpdateRealmUpdateGroupRemoveRealmRoleFromSubGroup(); - shouldUpdateRealmUpdateGroupAddClientRoleToSubGroup(); - shouldUpdateRealmUpdateGroupAddSecondClientRoleToSubGroup(); - shouldUpdateRealmUpdateGroupAddSecondClientRolesToSubGroup(); - shouldUpdateRealmUpdateGroupRemoveClientRoleFromSubGroup(); - shouldUpdateRealmUpdateGroupRemoveClientRolesFromSubGroup(); - shouldUpdateRealmUpdateGroupAddSubGroupToSubGroup(); - shouldUpdateRealmUpdateGroupAddSecondSubGroupToSubGroup(); - shouldUpdateRealmUpdateGroupUpdateSubGroupInSubGroup(); - shouldUpdateRealmUpdateGroupDeleteSubGroupInSubGroup(); - shouldUpdateRealmUpdateGroupDeleteSubGroup(); - shouldUpdateRealmDeleteGroup(); - } - - private void shouldCreateRealmWithGroups() throws Exception { + @Order(0) + public void shouldCreateRealmWithGroups() { doImport("0_create_realm_with_group.json"); RealmRepresentation createdRealm = keycloakProvider.get().realm(REALM_NAME).toRepresentation(); @@ -147,7 +46,9 @@ private void shouldCreateRealmWithGroups() throws Exception { assertThat("subgroups not empty", createdGroup.getSubGroups(), is(equalTo(ImmutableList.of()))); } - private void shouldUpdateRealmAddGroup() throws Exception { + @Test + @Order(1) + public void shouldUpdateRealmAddGroup() { doImport("1_update_realm_add_group.json"); RealmRepresentation createdRealm = keycloakProvider.get().realm(REALM_NAME).toRepresentation(); @@ -174,7 +75,9 @@ private void shouldUpdateRealmAddGroup() throws Exception { assertThat("subgroups is null", addedGroup.getSubGroups(), is(equalTo(ImmutableList.of()))); } - private void shouldUpdateRealmAddGroupWithAttribute() throws Exception { + @Test + @Order(2) + public void shouldUpdateRealmAddGroupWithAttribute() { doImport("2_update_realm_add_group_with_attribute.json"); RealmRepresentation createdRealm = keycloakProvider.get().realm(REALM_NAME).toRepresentation(); @@ -194,7 +97,9 @@ private void shouldUpdateRealmAddGroupWithAttribute() throws Exception { assertThat("subgroups is null", addedGroup.getSubGroups(), is(equalTo(ImmutableList.of()))); } - private void shouldUpdateRealmAddGroupWithRealmRole() throws Exception { + @Test + @Order(3) + public void shouldUpdateRealmAddGroupWithRealmRole() { doImport("3_update_realm_add_group_with_realm_role.json"); RealmRepresentation createdRealm = keycloakProvider.get().realm(REALM_NAME).toRepresentation(); @@ -212,7 +117,9 @@ private void shouldUpdateRealmAddGroupWithRealmRole() throws Exception { assertThat("subgroups is null", addedGroup.getSubGroups(), is(equalTo(ImmutableList.of()))); } - private void shouldUpdateRealmAddGroupWithClientRole() throws Exception { + @Test + @Order(4) + public void shouldUpdateRealmAddGroupWithClientRole() { doImport("4_update_realm_add_group_with_client_role.json"); RealmRepresentation createdRealm = keycloakProvider.get().realm(REALM_NAME).toRepresentation(); @@ -230,7 +137,9 @@ private void shouldUpdateRealmAddGroupWithClientRole() throws Exception { assertThat("subgroups is null", addedGroup.getSubGroups(), is(equalTo(ImmutableList.of()))); } - private void shouldUpdateRealmAddGroupWithSubGroup() throws Exception { + @Test + @Order(5) + public void shouldUpdateRealmAddGroupWithSubGroup() { doImport("5_update_realm_add_group_with_subgroup.json"); RealmRepresentation createdRealm = keycloakProvider.get().realm(REALM_NAME).toRepresentation(); @@ -258,7 +167,9 @@ private void shouldUpdateRealmAddGroupWithSubGroup() throws Exception { assertThat("subgroup's subgroups is null", subGroup.getSubGroups(), is(equalTo(ImmutableList.of()))); } - private void shouldUpdateRealmAddGroupWithSubGroupWithRealmRole() throws Exception { + @Test + @Order(6) + public void shouldUpdateRealmAddGroupWithSubGroupWithRealmRole() { doImport("6_update_realm_add_group_with_subgroup_with_realm_role.json"); RealmRepresentation createdRealm = keycloakProvider.get().realm(REALM_NAME).toRepresentation(); @@ -286,7 +197,9 @@ private void shouldUpdateRealmAddGroupWithSubGroupWithRealmRole() throws Excepti assertThat("subgroup's subgroups is null", subGroup.getSubGroups(), is(equalTo(ImmutableList.of()))); } - private void shouldUpdateRealmAddGroupWithSubGroupWithClientRole() throws Exception { + @Test + @Order(7) + public void shouldUpdateRealmAddGroupWithSubGroupWithClientRole() { doImport("7_update_realm_add_group_with_subgroup_with_client_role.json"); RealmRepresentation createdRealm = keycloakProvider.get().realm(REALM_NAME).toRepresentation(); @@ -314,7 +227,9 @@ private void shouldUpdateRealmAddGroupWithSubGroupWithClientRole() throws Except assertThat("subgroup's subgroups is null", subGroup.getSubGroups(), is(equalTo(ImmutableList.of()))); } - private void shouldUpdateRealmAddGroupWithSubGroupWithSubGroup() throws Exception { + @Test + @Order(8) + public void shouldUpdateRealmAddGroupWithSubGroupWithSubGroup() { doImport("8_update_realm_add_group_with_subgroup_with_subgroup.json"); RealmRepresentation createdRealm = keycloakProvider.get().realm(REALM_NAME).toRepresentation(); @@ -352,7 +267,9 @@ private void shouldUpdateRealmAddGroupWithSubGroupWithSubGroup() throws Exceptio assertThat("subgroup's client roles is null", innerSubGroup.getClientRoles(), is(equalTo(ImmutableMap.of()))); } - private void shouldUpdateRealmUpdateGroupAddAttribute() throws Exception { + @Test + @Order(9) + public void shouldUpdateRealmUpdateGroupAddAttribute() { doImport("9_update_realm_update_group_add_attribute.json"); RealmRepresentation createdRealm = keycloakProvider.get().realm(REALM_NAME).toRepresentation(); @@ -372,7 +289,9 @@ private void shouldUpdateRealmUpdateGroupAddAttribute() throws Exception { assertThat("subgroups not empty", updatedGroup.getSubGroups(), is(equalTo(ImmutableList.of()))); } - private void shouldUpdateRealmUpdateGroupAddRealmRole() throws Exception { + @Test + @Order(10) + public void shouldUpdateRealmUpdateGroupAddRealmRole() { doImport("10_update_realm_update_group_add_realm_role.json"); RealmRepresentation createdRealm = keycloakProvider.get().realm(REALM_NAME).toRepresentation(); @@ -392,7 +311,9 @@ private void shouldUpdateRealmUpdateGroupAddRealmRole() throws Exception { assertThat("subgroups not empty", updatedGroup.getSubGroups(), is(equalTo(ImmutableList.of()))); } - private void shouldUpdateRealmUpdateGroupAddClientRole() throws Exception { + @Test + @Order(11) + public void shouldUpdateRealmUpdateGroupAddClientRole() { doImport("11_update_realm_update_group_add_client_role.json"); RealmRepresentation createdRealm = keycloakProvider.get().realm(REALM_NAME).toRepresentation(); @@ -412,7 +333,9 @@ private void shouldUpdateRealmUpdateGroupAddClientRole() throws Exception { assertThat("subgroups not empty", updatedGroup.getSubGroups(), is(equalTo(ImmutableList.of()))); } - private void shouldUpdateRealmUpdateGroupAddSubgroup() throws Exception { + @Test + @Order(12) + public void shouldUpdateRealmUpdateGroupAddSubgroup() { doImport("12_update_realm_update_group_add_subgroup.json"); RealmRepresentation createdRealm = keycloakProvider.get().realm(REALM_NAME).toRepresentation(); @@ -443,7 +366,9 @@ private void shouldUpdateRealmUpdateGroupAddSubgroup() throws Exception { assertThat("subgroup's subgroups is null", subGroup.getSubGroups(), is(equalTo(ImmutableList.of()))); } - private void shouldUpdateRealmUpdateGroupAddSecondAttributeValue() throws Exception { + @Test + @Order(13) + public void shouldUpdateRealmUpdateGroupAddSecondAttributeValue() { doImport("13_update_realm_update_group_add_second_attribute_value.json"); RealmRepresentation createdRealm = keycloakProvider.get().realm(REALM_NAME).toRepresentation(); @@ -474,7 +399,9 @@ private void shouldUpdateRealmUpdateGroupAddSecondAttributeValue() throws Except assertThat("subgroup's subgroups is null", subGroup.getSubGroups(), is(equalTo(ImmutableList.of()))); } - private void shouldUpdateRealmUpdateGroupAddSecondAttribute() throws Exception { + @Test + @Order(14) + public void shouldUpdateRealmUpdateGroupAddSecondAttribute() { doImport("14_update_realm_update_group_add_second_attribute.json"); RealmRepresentation createdRealm = keycloakProvider.get().realm(REALM_NAME).toRepresentation(); @@ -507,7 +434,9 @@ private void shouldUpdateRealmUpdateGroupAddSecondAttribute() throws Exception { assertThat("subgroup's subgroups is null", subGroup.getSubGroups(), is(equalTo(ImmutableList.of()))); } - private void shouldUpdateRealmUpdateGroupChangeAttributeValue() throws Exception { + @Test + @Order(15) + public void shouldUpdateRealmUpdateGroupChangeAttributeValue() { doImport("15_update_realm_update_group_change_attribute_value.json"); RealmRepresentation createdRealm = keycloakProvider.get().realm(REALM_NAME).toRepresentation(); @@ -540,7 +469,9 @@ private void shouldUpdateRealmUpdateGroupChangeAttributeValue() throws Exception assertThat("subgroup's subgroups is null", subGroup.getSubGroups(), is(equalTo(ImmutableList.of()))); } - private void shouldUpdateRealmUpdateGroupChangeAttributeKey() throws Exception { + @Test + @Order(16) + public void shouldUpdateRealmUpdateGroupChangeAttributeKey() { doImport("16_update_realm_update_group_change_attribute_key.json"); RealmRepresentation createdRealm = keycloakProvider.get().realm(REALM_NAME).toRepresentation(); @@ -573,7 +504,9 @@ private void shouldUpdateRealmUpdateGroupChangeAttributeKey() throws Exception { assertThat("subgroup's subgroups is null", subGroup.getSubGroups(), is(equalTo(ImmutableList.of()))); } - private void shouldUpdateRealmUpdateGroupDeleteAttribute() throws Exception { + @Test + @Order(17) + public void shouldUpdateRealmUpdateGroupDeleteAttribute() { doImport("17_update_realm_update_group_delete_attribute.json"); RealmRepresentation createdRealm = keycloakProvider.get().realm(REALM_NAME).toRepresentation(); @@ -605,7 +538,9 @@ private void shouldUpdateRealmUpdateGroupDeleteAttribute() throws Exception { assertThat("subgroup's subgroups is null", subGroup.getSubGroups(), is(equalTo(ImmutableList.of()))); } - private void shouldUpdateRealmUpdateGroupDeleteAttributeValue() throws Exception { + @Test + @Order(18) + public void shouldUpdateRealmUpdateGroupDeleteAttributeValue() { doImport("18_update_realm_update_group_delete_attribute_value.json"); RealmRepresentation createdRealm = keycloakProvider.get().realm(REALM_NAME).toRepresentation(); @@ -637,7 +572,9 @@ private void shouldUpdateRealmUpdateGroupDeleteAttributeValue() throws Exception assertThat("subgroup's subgroups is null", subGroup.getSubGroups(), is(equalTo(ImmutableList.of()))); } - private void shouldUpdateRealmUpdateGroupAddSecondRealmRole() throws Exception { + @Test + @Order(19) + public void shouldUpdateRealmUpdateGroupAddSecondRealmRole() { doImport("19_update_realm_update_group_add_scond_realm_role.json"); RealmRepresentation createdRealm = keycloakProvider.get().realm(REALM_NAME).toRepresentation(); @@ -669,7 +606,9 @@ private void shouldUpdateRealmUpdateGroupAddSecondRealmRole() throws Exception { assertThat("subgroup's subgroups is null", subGroup.getSubGroups(), is(equalTo(ImmutableList.of()))); } - private void shouldUpdateRealmUpdateGroupDeleteRealmRole() throws Exception { + @Test + @Order(20) + public void shouldUpdateRealmUpdateGroupDeleteRealmRole() { doImport("20_update_realm_update_group_delete_realm_role.json"); RealmRepresentation createdRealm = keycloakProvider.get().realm(REALM_NAME).toRepresentation(); @@ -701,7 +640,9 @@ private void shouldUpdateRealmUpdateGroupDeleteRealmRole() throws Exception { assertThat("subgroup's subgroups is null", subGroup.getSubGroups(), is(equalTo(ImmutableList.of()))); } - private void shouldUpdateRealmUpdateGroupDeleteLastRealmRole() throws Exception { + @Test + @Order(21) + public void shouldUpdateRealmUpdateGroupDeleteLastRealmRole() { doImport("21_update_realm_update_group_delete_last_realm_role.json"); RealmRepresentation createdRealm = keycloakProvider.get().realm(REALM_NAME).toRepresentation(); @@ -733,7 +674,9 @@ private void shouldUpdateRealmUpdateGroupDeleteLastRealmRole() throws Exception assertThat("subgroup's subgroups is null", subGroup.getSubGroups(), is(equalTo(ImmutableList.of()))); } - private void shouldUpdateRealmUpdateGroupAddSecondClientRole() throws Exception { + @Test + @Order(22) + public void shouldUpdateRealmUpdateGroupAddSecondClientRole() { doImport("22_update_realm_update_group_delete_add_second_client_role.json"); RealmRepresentation createdRealm = keycloakProvider.get().realm(REALM_NAME).toRepresentation(); @@ -767,7 +710,9 @@ private void shouldUpdateRealmUpdateGroupAddSecondClientRole() throws Exception assertThat("subgroup's subgroups is null", subGroup.getSubGroups(), is(equalTo(ImmutableList.of()))); } - private void shouldUpdateRealmUpdateGroupRemoveClientRole() throws Exception { + @Test + @Order(23) + public void shouldUpdateRealmUpdateGroupRemoveClientRole() { doImport("23_update_realm_update_group_delete_remove_client_role.json"); RealmRepresentation createdRealm = keycloakProvider.get().realm(REALM_NAME).toRepresentation(); @@ -801,7 +746,9 @@ private void shouldUpdateRealmUpdateGroupRemoveClientRole() throws Exception { assertThat("subgroup's subgroups is null", subGroup.getSubGroups(), is(equalTo(ImmutableList.of()))); } - private void shouldUpdateRealmUpdateGroupAddClientRolesFromSecondClient() throws Exception { + @Test + @Order(24) + public void shouldUpdateRealmUpdateGroupAddClientRolesFromSecondClient() { doImport("24_update_realm_update_group_delete_add_client_roles_from_second_client.json"); RealmRepresentation createdRealm = keycloakProvider.get().realm(REALM_NAME).toRepresentation(); @@ -840,7 +787,9 @@ private void shouldUpdateRealmUpdateGroupAddClientRolesFromSecondClient() throws assertThat("subgroup's subgroups is null", subGroup.getSubGroups(), is(equalTo(ImmutableList.of()))); } - private void shouldUpdateRealmUpdateGroupRemoveClient() throws Exception { + @Test + @Order(25) + public void shouldUpdateRealmUpdateGroupRemoveClient() { doImport("25_update_realm_update_group_delete_remove_client.json"); RealmRepresentation createdRealm = keycloakProvider.get().realm(REALM_NAME).toRepresentation(); @@ -878,7 +827,9 @@ private void shouldUpdateRealmUpdateGroupRemoveClient() throws Exception { assertThat("subgroup's subgroups is null", subGroup.getSubGroups(), is(equalTo(ImmutableList.of()))); } - private void shouldUpdateRealmUpdateGroupAddAttributeToSubGroup() throws Exception { + @Test + @Order(26) + public void shouldUpdateRealmUpdateGroupAddAttributeToSubGroup() { doImport("26_update_realm_update_group_add_attribute_to_subgroup.json"); RealmRepresentation createdRealm = keycloakProvider.get().realm(REALM_NAME).toRepresentation(); @@ -918,7 +869,9 @@ private void shouldUpdateRealmUpdateGroupAddAttributeToSubGroup() throws Excepti assertThat("subgroup's subgroups is null", subGroup.getSubGroups(), is(equalTo(ImmutableList.of()))); } - private void shouldUpdateRealmUpdateGroupAddAttributeValueToSubGroup() throws Exception { + @Test + @Order(27) + public void shouldUpdateRealmUpdateGroupAddAttributeValueToSubGroup() { doImport("27_update_realm_update_group_add_attribute_value_to_subgroup.json"); RealmRepresentation createdRealm = keycloakProvider.get().realm(REALM_NAME).toRepresentation(); @@ -960,7 +913,9 @@ private void shouldUpdateRealmUpdateGroupAddAttributeValueToSubGroup() throws Ex assertThat("subgroup's subgroups is null", subGroup.getSubGroups(), is(equalTo(ImmutableList.of()))); } - private void shouldUpdateRealmUpdateGroupAddSecondAttributeToSubGroup() throws Exception { + @Test + @Order(28) + public void shouldUpdateRealmUpdateGroupAddSecondAttributeToSubGroup() { doImport("27_update_realm_update_group_add_second_attribute_to_subgroup.json"); RealmRepresentation createdRealm = keycloakProvider.get().realm(REALM_NAME).toRepresentation(); @@ -1003,7 +958,9 @@ private void shouldUpdateRealmUpdateGroupAddSecondAttributeToSubGroup() throws E assertThat("subgroup's subgroups is null", subGroup.getSubGroups(), is(equalTo(ImmutableList.of()))); } - private void shouldUpdateRealmUpdateGroupRemoveAttributeValueFromSubGroup() throws Exception { + @Test + @Order(29) + public void shouldUpdateRealmUpdateGroupRemoveAttributeValueFromSubGroup() { doImport("28_update_realm_update_group_remove_attribute_value_from_subgroup.json"); RealmRepresentation createdRealm = keycloakProvider.get().realm(REALM_NAME).toRepresentation(); @@ -1046,7 +1003,9 @@ private void shouldUpdateRealmUpdateGroupRemoveAttributeValueFromSubGroup() thro assertThat("subgroup's subgroups is null", subGroup.getSubGroups(), is(equalTo(ImmutableList.of()))); } - private void shouldUpdateRealmUpdateGroupRemoveAttributeFromSubGroup() throws Exception { + @Test + @Order(30) + public void shouldUpdateRealmUpdateGroupRemoveAttributeFromSubGroup() { doImport("29_update_realm_update_group_remove_attribute_from_subgroup.json"); RealmRepresentation createdRealm = keycloakProvider.get().realm(REALM_NAME).toRepresentation(); @@ -1088,7 +1047,9 @@ private void shouldUpdateRealmUpdateGroupRemoveAttributeFromSubGroup() throws Ex assertThat("subgroup's subgroups is null", subGroup.getSubGroups(), is(equalTo(ImmutableList.of()))); } - private void shouldUpdateRealmUpdateGroupAddRealmRoleToSubGroup() throws Exception { + @Test + @Order(31) + public void shouldUpdateRealmUpdateGroupAddRealmRoleToSubGroup() { doImport("30_update_realm_update_group_add_realm_role_to_subgroup.json"); RealmRepresentation createdRealm = keycloakProvider.get().realm(REALM_NAME).toRepresentation(); @@ -1130,7 +1091,9 @@ private void shouldUpdateRealmUpdateGroupAddRealmRoleToSubGroup() throws Excepti assertThat("subgroup's subgroups is null", subGroup.getSubGroups(), is(equalTo(ImmutableList.of()))); } - private void shouldUpdateRealmUpdateGroupAddSecondRealmRoleToSubGroup() throws Exception { + @Test + @Order(32) + public void shouldUpdateRealmUpdateGroupAddSecondRealmRoleToSubGroup() { doImport("31_update_realm_update_group_add_second_role_to_subgroup.json"); RealmRepresentation createdRealm = keycloakProvider.get().realm(REALM_NAME).toRepresentation(); @@ -1172,7 +1135,9 @@ private void shouldUpdateRealmUpdateGroupAddSecondRealmRoleToSubGroup() throws E assertThat("subgroup's subgroups is null", subGroup.getSubGroups(), is(equalTo(ImmutableList.of()))); } - private void shouldUpdateRealmUpdateGroupRemoveRealmRoleFromSubGroup() throws Exception { + @Test + @Order(33) + public void shouldUpdateRealmUpdateGroupRemoveRealmRoleFromSubGroup() { doImport("32_update_realm_update_group_remove_role_from_subgroup.json"); RealmRepresentation createdRealm = keycloakProvider.get().realm(REALM_NAME).toRepresentation(); @@ -1214,7 +1179,9 @@ private void shouldUpdateRealmUpdateGroupRemoveRealmRoleFromSubGroup() throws Ex assertThat("subgroup's subgroups is null", subGroup.getSubGroups(), is(equalTo(ImmutableList.of()))); } - private void shouldUpdateRealmUpdateGroupAddClientRoleToSubGroup() throws Exception { + @Test + @Order(34) + public void shouldUpdateRealmUpdateGroupAddClientRoleToSubGroup() { doImport("33_update_realm_update_group_add_client_role_to_subgroup.json"); RealmRepresentation createdRealm = keycloakProvider.get().realm(REALM_NAME).toRepresentation(); @@ -1256,7 +1223,9 @@ private void shouldUpdateRealmUpdateGroupAddClientRoleToSubGroup() throws Except assertThat("subgroup's subgroups is null", subGroup.getSubGroups(), is(equalTo(ImmutableList.of()))); } - private void shouldUpdateRealmUpdateGroupAddSecondClientRoleToSubGroup() throws Exception { + @Test + @Order(35) + public void shouldUpdateRealmUpdateGroupAddSecondClientRoleToSubGroup() { doImport("34_update_realm_update_group_add_second_client_role_to_subgroup.json"); RealmRepresentation createdRealm = keycloakProvider.get().realm(REALM_NAME).toRepresentation(); @@ -1299,7 +1268,9 @@ private void shouldUpdateRealmUpdateGroupAddSecondClientRoleToSubGroup() throws assertThat("subgroup's subgroups is null", subGroup.getSubGroups(), is(equalTo(ImmutableList.of()))); } - private void shouldUpdateRealmUpdateGroupAddSecondClientRolesToSubGroup() throws Exception { + @Test + @Order(36) + public void shouldUpdateRealmUpdateGroupAddSecondClientRolesToSubGroup() { doImport("35_update_realm_update_group_add_second_client_roles_to_subgroup.json"); RealmRepresentation createdRealm = keycloakProvider.get().realm(REALM_NAME).toRepresentation(); @@ -1344,7 +1315,9 @@ private void shouldUpdateRealmUpdateGroupAddSecondClientRolesToSubGroup() throws assertThat("subgroup's subgroups is null", subGroup.getSubGroups(), is(equalTo(ImmutableList.of()))); } - private void shouldUpdateRealmUpdateGroupRemoveClientRoleFromSubGroup() throws Exception { + @Test + @Order(37) + public void shouldUpdateRealmUpdateGroupRemoveClientRoleFromSubGroup() { doImport("36_update_realm_update_group_remove_client_role_from_subgroup.json"); RealmRepresentation createdRealm = keycloakProvider.get().realm(REALM_NAME).toRepresentation(); @@ -1389,7 +1362,9 @@ private void shouldUpdateRealmUpdateGroupRemoveClientRoleFromSubGroup() throws E assertThat("subgroup's subgroups is null", subGroup.getSubGroups(), is(equalTo(ImmutableList.of()))); } - private void shouldUpdateRealmUpdateGroupRemoveClientRolesFromSubGroup() throws Exception { + @Test + @Order(38) + public void shouldUpdateRealmUpdateGroupRemoveClientRolesFromSubGroup() { doImport("37_update_realm_update_group_remove_client_roles_from_subgroup.json"); RealmRepresentation createdRealm = keycloakProvider.get().realm(REALM_NAME).toRepresentation(); @@ -1433,7 +1408,9 @@ private void shouldUpdateRealmUpdateGroupRemoveClientRolesFromSubGroup() throws assertThat("subgroup's subgroups is null", subGroup.getSubGroups(), is(equalTo(ImmutableList.of()))); } - private void shouldUpdateRealmUpdateGroupAddSubGroupToSubGroup() throws Exception { + @Test + @Order(39) + public void shouldUpdateRealmUpdateGroupAddSubGroupToSubGroup() { doImport("38_update_realm_update_group_add_subgroup_to_subgroup.json"); RealmRepresentation createdRealm = keycloakProvider.get().realm(REALM_NAME).toRepresentation(); @@ -1487,7 +1464,9 @@ private void shouldUpdateRealmUpdateGroupAddSubGroupToSubGroup() throws Exceptio assertThat("subgroup's client roles is null", innerSubGroup.getClientRoles(), is(equalTo(ImmutableMap.of()))); } - private void shouldUpdateRealmUpdateGroupAddSecondSubGroupToSubGroup() throws Exception { + @Test + @Order(40) + public void shouldUpdateRealmUpdateGroupAddSecondSubGroupToSubGroup() { doImport("39_update_realm_update_group_add_second subgroup_to_subgroup.json"); RealmRepresentation createdRealm = keycloakProvider.get().realm(REALM_NAME).toRepresentation(); @@ -1557,7 +1536,9 @@ private void shouldUpdateRealmUpdateGroupAddSecondSubGroupToSubGroup() throws Ex assertThat("inner subgroup's subgroups is null", innerSubGroup.getSubGroups(), is(equalTo(ImmutableList.of()))); } - private void shouldUpdateRealmUpdateGroupUpdateSubGroupInSubGroup() throws Exception { + @Test + @Order(41) + public void shouldUpdateRealmUpdateGroupUpdateSubGroupInSubGroup() { doImport("40_update_realm_update_group_update_subgroup_in_subgroup.json"); RealmRepresentation createdRealm = keycloakProvider.get().realm(REALM_NAME).toRepresentation(); @@ -1641,7 +1622,9 @@ private void shouldUpdateRealmUpdateGroupUpdateSubGroupInSubGroup() throws Excep assertThat("inner subgroup's subgroups is null", innerSubGroup.getSubGroups(), is(equalTo(ImmutableList.of()))); } - private void shouldUpdateRealmUpdateGroupDeleteSubGroupInSubGroup() throws Exception { + @Test + @Order(42) + public void shouldUpdateRealmUpdateGroupDeleteSubGroupInSubGroup() { doImport("41_update_realm_update_group_delete_subgroup_in_subgroup.json"); RealmRepresentation createdRealm = keycloakProvider.get().realm(REALM_NAME).toRepresentation(); @@ -1699,7 +1682,9 @@ private void shouldUpdateRealmUpdateGroupDeleteSubGroupInSubGroup() throws Excep assertThat("inner subgroup's subgroups is null", innerSubGroup.getSubGroups(), is(equalTo(ImmutableList.of()))); } - private void shouldUpdateRealmUpdateGroupDeleteSubGroup() throws Exception { + @Test + @Order(43) + public void shouldUpdateRealmUpdateGroupDeleteSubGroup() { doImport("42_update_realm_update_group_delete_subgroup.json"); RealmRepresentation createdRealm = keycloakProvider.get().realm(REALM_NAME).toRepresentation(); @@ -1727,7 +1712,9 @@ private void shouldUpdateRealmUpdateGroupDeleteSubGroup() throws Exception { assertThat(updatedGroup.getSubGroups(), hasSize(0)); } - private void shouldUpdateRealmDeleteGroup() throws Exception { + @Test + @Order(44) + public void shouldUpdateRealmDeleteGroup() { GroupRepresentation updatedGroup = tryToLoadGroup("/My Added Group").get(); MatcherAssert.assertThat(updatedGroup.getName(), Matchers.is(Matchers.equalTo("My Added Group"))); @@ -1750,7 +1737,7 @@ private GroupRepresentation loadGroup(String groupPath) { .stream() .filter(g -> Objects.equals(groupPath, g.getPath())) .findFirst() - .get(); + .orElse(null); return groupsResource .group(groupRepresentation.getId()) @@ -1773,22 +1760,6 @@ private Optional tryToLoadGroup(String groupPath) { ); } - private void doImport(String realmImport) { - RealmImport foundImport = getImport(realmImport); - realmImportService.doImport(foundImport); - } - - private RealmImport getImport(String importName) { - Map realmImports = keycloakImport.getRealmImports(); - - return realmImports.entrySet() - .stream() - .filter(e -> e.getKey().equals(importName)) - .map(Map.Entry::getValue) - .findFirst() - .get(); - } - private List sorted(List unsorted) { ArrayList toSort = new ArrayList<>(unsorted); Collections.sort((List) toSort);