keycloak-uncached
Changes
testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/oauth/ClientAuthSignedJWTTest.java 192(+88 -104)
testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/oauth/ServiceAccountTest.java 4(+2 -2)
testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/util/ClientBuilder.java 22(+22 -0)
testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/util/ClientManager.java 37(+31 -6)
testsuite/integration-arquillian/tests/base/src/test/resources/client-auth-test/keystore-client1.jks 0(+0 -0)
Details
diff --git a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/oauth/ServiceAccountTest.java b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/oauth/ServiceAccountTest.java
index 551f321..c3b05cb 100755
--- a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/oauth/ServiceAccountTest.java
+++ b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/oauth/ServiceAccountTest.java
@@ -220,7 +220,7 @@ public class ServiceAccountTest extends AbstractKeycloakTest {
@Test
public void changeClientIdTest() throws Exception {
- ClientManager.realm(adminClient.realm("test")).rename("service-account-cl", "updated-client");
+ ClientManager.realm(adminClient.realm("test")).clientId("service-account-cl").renameTo("updated-client");
oauth.clientId("updated-client");
@@ -243,7 +243,7 @@ public class ServiceAccountTest extends AbstractKeycloakTest {
.assertEvent();
- ClientManager.realm(adminClient.realm("test")).rename("updated-client", "service-account-cl");
+ ClientManager.realm(adminClient.realm("test")).clientId("updated-client").renameTo("service-account-cl");
}
}
diff --git a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/util/ClientBuilder.java b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/util/ClientBuilder.java
index c2d8385..b3f3c8d 100644
--- a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/util/ClientBuilder.java
+++ b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/util/ClientBuilder.java
@@ -17,13 +17,18 @@
package org.keycloak.testsuite.util;
+import org.codehaus.plexus.util.xml.pull.XmlSerializer;
import org.keycloak.representations.idm.ClientRepresentation;
import org.keycloak.representations.idm.UserRepresentation;
import javax.ws.rs.client.Client;
+import java.util.ArrayList;
+import java.util.Arrays;
import java.util.HashMap;
+import java.util.HashSet;
import java.util.LinkedList;
import java.util.List;
+import java.util.Map;
/**
* @author <a href="mailto:sthorger@redhat.com">Stian Thorgersen</a>
@@ -74,4 +79,21 @@ public class ClientBuilder {
return rep;
}
+ public ClientBuilder attribute(String name, String value) {
+ Map<String, String> attributes = new HashMap<String, String>();
+ attributes.put(name, value);
+ rep.setAttributes(attributes);
+
+ return this;
+ }
+
+ public ClientBuilder authenticatorType(String providerId) {
+ rep.setClientAuthenticatorType(providerId);
+ return this;
+ }
+
+ public ClientBuilder redirectUris(String... redirectUris) {
+ rep.setRedirectUris(Arrays.asList(redirectUris));
+ return this;
+ }
}
diff --git a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/util/ClientManager.java b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/util/ClientManager.java
index 5e98ab5..9c06c5d 100644
--- a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/util/ClientManager.java
+++ b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/util/ClientManager.java
@@ -4,7 +4,9 @@ import org.keycloak.admin.client.resource.ClientResource;
import org.keycloak.admin.client.resource.RealmResource;
import org.keycloak.representations.idm.ClientRepresentation;
-import java.util.List;
+import java.util.Map;
+
+import static org.keycloak.testsuite.admin.ApiUtil.findClientByClientId;
/**
* @author <a href="mailto:bruno@abstractj.org">Bruno Oliveira</a>.
@@ -13,20 +15,43 @@ public class ClientManager {
private static RealmResource realm;
- private ClientManager(){}
+ private ClientManager() {
+ }
public static ClientManager realm(RealmResource realm) {
ClientManager.realm = realm;
return new ClientManager();
}
- public void rename(String oldName, String newName) {
- List<ClientRepresentation> client = realm.clients().findByClientId(oldName);
- if (!client.isEmpty()) {
- ClientResource clientResource = realm.clients().get(client.get(0).getId());
+ public ClientManagerBuilder clientId(String clientId) {
+ return new ClientManagerBuilder(findClientByClientId(realm, clientId));
+ }
+
+ public class ClientManagerBuilder {
+
+ private final ClientResource clientResource;
+
+ public ClientManagerBuilder(ClientResource clientResource) {
+ this.clientResource = clientResource;
+ }
+
+ public void renameTo(String newName) {
ClientRepresentation app = clientResource.toRepresentation();
app.setClientId(newName);
clientResource.update(app);
}
+
+ public void enabled(Boolean enabled) {
+ ClientRepresentation app = clientResource.toRepresentation();
+ app.setEnabled(enabled);
+ clientResource.update(app);
+ }
+
+ public void updateAttribute(String attribute, String value) {
+ ClientRepresentation app = clientResource.toRepresentation();
+ app.getAttributes().put(attribute, value);
+ clientResource.update(app);
+ }
+
}
}
diff --git a/testsuite/integration-arquillian/tests/base/src/test/resources/client-auth-test/keystore-client1.jks b/testsuite/integration-arquillian/tests/base/src/test/resources/client-auth-test/keystore-client1.jks
new file mode 100644
index 0000000..9b2a4d6
Binary files /dev/null and b/testsuite/integration-arquillian/tests/base/src/test/resources/client-auth-test/keystore-client1.jks differ
diff --git a/testsuite/integration-arquillian/tests/base/src/test/resources/client-auth-test/keystore-client2.jks b/testsuite/integration-arquillian/tests/base/src/test/resources/client-auth-test/keystore-client2.jks
new file mode 100644
index 0000000..03aa281
Binary files /dev/null and b/testsuite/integration-arquillian/tests/base/src/test/resources/client-auth-test/keystore-client2.jks differ
diff --git a/testsuite/integration-arquillian/tests/base/src/test/resources/client-auth-test/keystore-client2.p12 b/testsuite/integration-arquillian/tests/base/src/test/resources/client-auth-test/keystore-client2.p12
new file mode 100644
index 0000000..b7af880
Binary files /dev/null and b/testsuite/integration-arquillian/tests/base/src/test/resources/client-auth-test/keystore-client2.p12 differ