keycloak-uncached
Changes
testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/admin/AbstractAdminTest.java 36(+0 -36)
testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/admin/ClientTest.java 7(+4 -3)
testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/admin/RealmTest.java 217(+90 -127)
testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/Assert.java 2(+1 -1)
testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/endpoint/group/GroupTest.java 20(+20 -0)
testsuite/integration-arquillian/tests/base/src/test/resources/client-descriptions/client-oidc.json 0(+0 -0)
Details
diff --git a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/admin/AbstractAdminTest.java b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/admin/AbstractAdminTest.java
index b02c21f..9c2b2e1 100644
--- a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/admin/AbstractAdminTest.java
+++ b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/admin/AbstractAdminTest.java
@@ -93,40 +93,4 @@ public abstract class AbstractAdminTest extends TestRealmKeycloakTest {
}
}
- public static <T> void assertNames(List<T> actual, String... expected) {
- Arrays.sort(expected);
- String[] actualNames = names(actual);
- assertArrayEquals("Expected: " + Arrays.toString(expected) + ", was: " + Arrays.toString(actualNames), expected, actualNames);
- }
-
- public static <T> List<T> sort(List<T> list) {
- Collections.sort(list, new Comparator<Object>() {
- @Override
- public int compare(Object o1, Object o2) {
- return name(o1).compareTo(name(o2));
- }
- });
- return list;
- }
-
- public static <T> String[] names(List<T> list) {
- String[] names = new String[list.size()];
- for (int i = 0; i < list.size(); i++) {
- names[i] = name(list.get(i));
- }
- Arrays.sort(names);
- return names;
- }
-
- public static String name(Object o1) {
- if (o1 instanceof RealmRepresentation) {
- return ((RealmRepresentation) o1).getRealm();
- } else if (o1 instanceof ClientRepresentation) {
- return ((ClientRepresentation) o1).getClientId();
- } else if (o1 instanceof IdentityProviderRepresentation) {
- return ((IdentityProviderRepresentation) o1).getAlias();
- }
- throw new IllegalArgumentException();
- }
-
}
diff --git a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/admin/ClientTest.java b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/admin/ClientTest.java
index 84ae0c1..46f5a4a 100644
--- a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/admin/ClientTest.java
+++ b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/admin/ClientTest.java
@@ -17,7 +17,6 @@
package org.keycloak.testsuite.admin;
-import org.junit.Assert;
import org.junit.Test;
import org.keycloak.admin.client.resource.ClientResource;
import org.keycloak.admin.client.resource.ProtocolMappersResource;
@@ -31,6 +30,8 @@ import javax.ws.rs.core.Response;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
+
+import org.keycloak.testsuite.Assert;
import org.keycloak.testsuite.util.OAuthClient;
import static org.junit.Assert.assertArrayEquals;
@@ -47,7 +48,7 @@ public class ClientTest extends AbstractAdminTest {
@Test
public void getClients() {
- assertNames(realm.clients().findAll(), "account", "realm-management", "security-admin-console", "broker", Constants.ADMIN_CLI_CLIENT_ID);
+ Assert.assertNames(realm.clients().findAll(), "account", "realm-management", "security-admin-console", "broker", Constants.ADMIN_CLI_CLIENT_ID);
}
private ClientRepresentation createClient() {
@@ -67,7 +68,7 @@ public class ClientTest extends AbstractAdminTest {
String id = createClient().getId();
assertNotNull(realm.clients().get(id));
- assertNames(realm.clients().findAll(), "account", "realm-management", "security-admin-console", "broker", "my-app", Constants.ADMIN_CLI_CLIENT_ID);
+ Assert.assertNames(realm.clients().findAll(), "account", "realm-management", "security-admin-console", "broker", "my-app", Constants.ADMIN_CLI_CLIENT_ID);
}
@Test
diff --git a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/Assert.java b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/Assert.java
index 8ccd2cf..ddd2f53 100644
--- a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/Assert.java
+++ b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/Assert.java
@@ -31,7 +31,7 @@ import static org.junit.Assert.assertArrayEquals;
/**
* @author <a href="mailto:sthorger@redhat.com">Stian Thorgersen</a>
*/
-public class Assert {
+public class Assert extends org.junit.Assert {
public static <T> void assertNames(List<T> actual, String... expected) {
Arrays.sort(expected);
diff --git a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/endpoint/group/GroupTest.java b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/endpoint/group/GroupTest.java
index b748197..573cd86 100755
--- a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/endpoint/group/GroupTest.java
+++ b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/endpoint/group/GroupTest.java
@@ -37,6 +37,7 @@ import javax.ws.rs.NotFoundException;
import javax.ws.rs.core.Response;
import java.io.IOException;
import java.net.URI;
+import java.util.Collections;
import java.util.LinkedList;
import java.util.List;
import java.util.Set;
@@ -243,4 +244,23 @@ public class GroupTest extends AbstractGroupTest {
Assert.assertNull(login("direct-login", "resource-owner", "secret", user.getId()).getRealmAccess());
}
+
+
+ @Test
+ // KEYCLOAK-2700
+ public void deleteRealmWithDefaultGroups() throws IOException {
+ RealmRepresentation rep = new RealmRepresentation();
+ rep.setRealm("foo");
+
+ GroupRepresentation group = new GroupRepresentation();
+ group.setName("default1");
+ group.setPath("/default1");
+
+ rep.setGroups(Collections.singletonList(group));
+ rep.setDefaultGroups(Collections.singletonList("/default1"));
+
+ adminClient.realms().create(rep);
+
+ adminClient.realm(rep.getRealm()).remove();
+ }
}