keycloak-aplcache

resolve conflicts

9/15/2017 5:37:35 PM

Changes

pom.xml 6(+6 -0)

testsuite/integration-arquillian/servers/app-server/jboss/common/security.xsl 64(+0 -64)

testsuite/integration-arquillian/servers/app-server/jboss/common/security-eap6.xsl 51(+0 -51)

testsuite/integration-arquillian/servers/auth-server/jboss/common/security.xsl 64(+0 -64)

testsuite/integration-arquillian/servers/auth-server/jboss/common/security-wildfly.xsl 67(+0 -67)

Details

diff --git a/model/jpa/src/main/resources/META-INF/jpa-changelog-3.2.0.xml b/model/jpa/src/main/resources/META-INF/jpa-changelog-3.2.0.xml
index 692301f..12981cd 100644
--- a/model/jpa/src/main/resources/META-INF/jpa-changelog-3.2.0.xml
+++ b/model/jpa/src/main/resources/META-INF/jpa-changelog-3.2.0.xml
@@ -27,10 +27,26 @@
     <changeSet author="keycloak" id="3.2.0-fix">
         <preConditions onFail="MARK_RAN">
             <changeSetExecuted id="3.2.0" author="keycloak" changeLogFile="META-INF/jpa-changelog-3.2.0.xml"/>
+            <not>
+                <dbms type="mssql"/>
+            </not>
         </preConditions>
         
         <addNotNullConstraint tableName="CLIENT_INITIAL_ACCESS" columnName="REALM_ID" columnDataType="VARCHAR(36)" />
     </changeSet>
+
+    <changeSet author="keycloak" id="3.2.0-fix-with-keycloak-5416">
+        <preConditions onFail="MARK_RAN">
+            <changeSetExecuted id="3.2.0" author="keycloak" changeLogFile="META-INF/jpa-changelog-3.2.0.xml"/>
+            <dbms type="mssql"/>
+        </preConditions>
+
+        <dropIndex indexName="IDX_CLIENT_INIT_ACC_REALM" tableName="CLIENT_INITIAL_ACCESS"/>
+        <addNotNullConstraint tableName="CLIENT_INITIAL_ACCESS" columnName="REALM_ID" columnDataType="VARCHAR(36)" />
+        <createIndex indexName="IDX_CLIENT_INIT_ACC_REALM" tableName="CLIENT_INITIAL_ACCESS">
+            <column name="REALM_ID" type="VARCHAR(36)"/>
+        </createIndex>
+    </changeSet>
     
     <changeSet author="keycloak" id="3.2.0-fixed">
         <preConditions onFail="MARK_RAN">

pom.xml 6(+6 -0)

diff --git a/pom.xml b/pom.xml
index 337c568..9beb551 100755
--- a/pom.xml
+++ b/pom.xml
@@ -597,6 +597,12 @@
                 <artifactId>wildfly-undertow</artifactId>
                 <version>${wildfly.version}</version>
                 <scope>test</scope>
+                <exclusions>
+                    <exclusion>
+                        <groupId>io.undertow.jastow</groupId>
+                        <artifactId>jastow</artifactId>
+                    </exclusion>
+                </exclusions>
             </dependency>
             <dependency>
                 <groupId>org.wildfly.core</groupId>
diff --git a/testsuite/integration-arquillian/pom.xml b/testsuite/integration-arquillian/pom.xml
index d42264a..4d7eebc 100644
--- a/testsuite/integration-arquillian/pom.xml
+++ b/testsuite/integration-arquillian/pom.xml
@@ -50,6 +50,7 @@
         <arquillian-infinispan-container.version>1.2.0.Beta2</arquillian-infinispan-container.version>
         <version.shrinkwrap.resolvers>2.2.6</version.shrinkwrap.resolvers>
         <undertow-embedded.version>1.0.0.Alpha2</undertow-embedded.version>
+        <version.org.wildfly.extras.creaper>1.6.1</version.org.wildfly.extras.creaper>
 
         <!--migration properties-->
         <migration.70.version>1.9.8.Final</migration.70.version>
diff --git a/testsuite/integration-arquillian/servers/app-server/jboss/pom.xml b/testsuite/integration-arquillian/servers/app-server/jboss/pom.xml
index 343e980..cbb3803 100644
--- a/testsuite/integration-arquillian/servers/app-server/jboss/pom.xml
+++ b/testsuite/integration-arquillian/servers/app-server/jboss/pom.xml
@@ -182,6 +182,29 @@
                                     <overwrite>true</overwrite>
                                 </configuration>
                             </execution>
+                            <execution>
+                                <id>copy-keystore</id>
+                                <phase>process-resources</phase>
+                                <goals>
+                                    <goal>copy-resources</goal>
+                                </goals>
+                                <configuration>
+                                    <outputDirectory>${app.server.jboss.home}/standalone/configuration</outputDirectory>
+                                    <resources>
+                                        <resource>
+                                            <directory>${common.resources}/keystore</directory>
+                                            <includes>
+                                                <include>adapter.jks</include>
+                                                <include>keycloak.truststore</include>
+                                            </includes>
+                                        </resource>
+                                    </resources>
+                                    <nonFilteredFileExtensions>
+                                        <nonFilteredFileExtension>jks</nonFilteredFileExtension>
+                                        <nonFilteredFileExtension>truststore</nonFilteredFileExtension>
+                                    </nonFilteredFileExtensions>
+                                </configuration>
+                            </execution>
                         </executions>
                     </plugin>
 
@@ -324,79 +347,6 @@
             </build>
         </profile>
         <profile>
-            <id>ssl</id>
-            <activation>
-                <property>
-                    <name>app.server.ssl.required</name>
-                </property>
-            </activation>
-            <build>
-                <plugins>
-                    <plugin>
-                        <artifactId>maven-resources-plugin</artifactId>
-                    </plugin>
-                </plugins>
-                <pluginManagement>
-                    <plugins>
-                        <plugin>
-                            <groupId>org.codehaus.mojo</groupId>
-                            <artifactId>xml-maven-plugin</artifactId>
-                            <executions>
-                                <execution>
-                                    <id>configure-adapter-subsystem-security</id>
-                                    <phase>process-resources</phase>
-                                    <goals>
-                                        <goal>transform</goal>
-                                    </goals>
-                                    <configuration>
-                                        <transformationSets>
-                                            <transformationSet>
-                                                <dir>${app.server.jboss.home}/standalone/configuration</dir>
-                                                <includes>
-                                                    <include>standalone.xml</include>
-                                                </includes>
-                                                <stylesheet>${common.resources}/${security.xslt}</stylesheet>
-                                                <outputDir>${app.server.jboss.home}/standalone/configuration</outputDir>
-                                            </transformationSet>
-                                        </transformationSets>
-                                    </configuration>
-                                </execution>
-                            </executions>
-                        </plugin>
-                        <plugin>
-                            <artifactId>maven-resources-plugin</artifactId>
-                            <executions>
-                                <execution>
-                                    <id>copy-keystore</id>
-                                    <phase>process-resources</phase>
-                                    <goals>
-                                        <goal>copy-resources</goal>
-                                    </goals>
-                                    <configuration>
-                                        <outputDirectory>${app.server.jboss.home}/standalone/configuration</outputDirectory>
-                                        <resources>
-                                            <resource>
-                                                <directory>${common.resources}/keystore</directory>
-                                                <includes>
-                                                    <include>adapter.jks</include>
-                                                    <include>keycloak.truststore</include>
-                                                </includes>
-                                            </resource>
-                                        </resources>
-                                        <nonFilteredFileExtensions>
-                                            <nonFilteredFileExtension>jks</nonFilteredFileExtension>
-                                            <nonFilteredFileExtension>truststore</nonFilteredFileExtension>
-                                        </nonFilteredFileExtensions>
-                                    </configuration>
-                                </execution>
-                            </executions>
-                        </plugin>
-                    </plugins>
-                </pluginManagement>
-            </build>
-        </profile>
-        
-        <profile>
             <id>app-server-as7</id>
             <modules>
                 <module>as7</module>
diff --git a/testsuite/integration-arquillian/servers/auth-server/jboss/pom.xml b/testsuite/integration-arquillian/servers/auth-server/jboss/pom.xml
index a2de7fd..ae7d87a 100644
--- a/testsuite/integration-arquillian/servers/auth-server/jboss/pom.xml
+++ b/testsuite/integration-arquillian/servers/auth-server/jboss/pom.xml
@@ -342,81 +342,6 @@
                 </pluginManagement>
             </build>
         </profile>
-
-        <profile>
-            <id>ssl</id>
-            <activation>
-                <property>
-                    <name>auth.server.ssl.required</name>
-                </property>
-            </activation>
-            <properties>
-                <!--disable exclusion pattern for x509 tests, which is enabled by default in the base/pom.xml-->
-                <exclude.x509>-</exclude.x509>
-            </properties>
-            <build>
-                <pluginManagement>
-                    <plugins>
-                        <plugin>
-                            <groupId>org.codehaus.mojo</groupId>
-                            <artifactId>xml-maven-plugin</artifactId>
-                            <executions>
-                                <execution>
-                                    <id>configure-adapter-subsystem-security</id>
-                                    <phase>process-resources</phase>
-                                    <goals>
-                                        <goal>transform</goal>
-                                    </goals>
-                                    <configuration>
-                                        <transformationSets>
-                                            <transformationSet>
-                                                <dir>${auth.server.home}/standalone/configuration</dir>
-                                                <includes>
-                                                    <include>standalone.xml</include>
-                                                </includes>
-                                                <stylesheet>${common.resources}/${security.xsl}</stylesheet>
-                                                <outputDir>${auth.server.home}/standalone/configuration</outputDir>
-                                            </transformationSet>
-                                        </transformationSets>
-                                    </configuration>
-                                </execution>
-                            </executions>
-                        </plugin>
-                        <plugin>
-                            <artifactId>maven-resources-plugin</artifactId>
-                            <executions>
-                                <execution>
-                                    <id>copy-keystore</id>
-                                    <phase>process-resources</phase>
-                                    <goals>
-                                        <goal>copy-resources</goal>
-                                    </goals>
-                                    <configuration>
-                                        <outputDirectory>${auth.server.home}/standalone/configuration</outputDirectory>
-                                        <resources>
-                                            <resource>
-                                                <directory>${common.resources}/keystore</directory>
-                                                <includes>
-                                                    <include>keycloak.jks</include>
-                                                    <include>keycloak.truststore</include>
-                                                    <include>client.jks</include>
-                                                    <include>ca.crt</include>
-                                                    <include>client.crt</include>
-                                                    <include>client.key</include>
-                                                    <include>intermediate-ca.crl</include>
-                                                    <include>empty.crl</include>
-                                                </includes>
-                                            </resource>
-                                        </resources>
-                                    </configuration>
-                                </execution>
-                            </executions>
-                        </plugin>
-                    </plugins>
-                </pluginManagement>
-            </build>
-        </profile>
-
         <profile>
             <id>jpa</id>
             <properties>
diff --git a/testsuite/integration-arquillian/tests/base/src/main/java/org/keycloak/testsuite/arquillian/AppServerTestEnricher.java b/testsuite/integration-arquillian/tests/base/src/main/java/org/keycloak/testsuite/arquillian/AppServerTestEnricher.java
index bc83338..cbd922e 100644
--- a/testsuite/integration-arquillian/tests/base/src/main/java/org/keycloak/testsuite/arquillian/AppServerTestEnricher.java
+++ b/testsuite/integration-arquillian/tests/base/src/main/java/org/keycloak/testsuite/arquillian/AppServerTestEnricher.java
@@ -9,6 +9,10 @@ import org.jboss.arquillian.test.spi.annotation.ClassScoped;
 import org.jboss.arquillian.test.spi.event.suite.BeforeClass;
 import org.jboss.logging.Logger;
 import org.keycloak.testsuite.arquillian.annotation.AppServerContainer;
+import org.wildfly.extras.creaper.core.ManagementClient;
+import org.wildfly.extras.creaper.core.online.ManagementProtocol;
+import org.wildfly.extras.creaper.core.online.OnlineManagementClient;
+import org.wildfly.extras.creaper.core.online.OnlineOptions;
 
 import java.io.IOException;
 import java.net.MalformedURLException;
@@ -91,6 +95,22 @@ public class AppServerTestEnricher {
         return appServerInfo;
     }
 
+    public static OnlineManagementClient getManagementClient() {
+        OnlineManagementClient managementClient;
+        try {
+            managementClient = ManagementClient.online(OnlineOptions
+                    .standalone()
+                    .hostAndPort(System.getProperty("app.server.host"), System.getProperty("app.server","").startsWith("eap6") ? 10199 : 10190)
+                    .protocol(System.getProperty("app.server","").startsWith("eap6") ? ManagementProtocol.REMOTE : ManagementProtocol.HTTP_REMOTING)
+                    .build()
+            );
+        } catch (IOException e) {
+            throw new RuntimeException(e);
+        }
+
+        return managementClient;
+    }
+
     @Inject
     private Instance<ContainerController> containerConrollerInstance;
 
diff --git a/testsuite/integration-arquillian/tests/base/src/main/java/org/keycloak/testsuite/arquillian/AuthServerTestEnricher.java b/testsuite/integration-arquillian/tests/base/src/main/java/org/keycloak/testsuite/arquillian/AuthServerTestEnricher.java
index f03a81d..5b0f6d8 100644
--- a/testsuite/integration-arquillian/tests/base/src/main/java/org/keycloak/testsuite/arquillian/AuthServerTestEnricher.java
+++ b/testsuite/integration-arquillian/tests/base/src/main/java/org/keycloak/testsuite/arquillian/AuthServerTestEnricher.java
@@ -36,6 +36,9 @@ import org.keycloak.representations.idm.RealmRepresentation;
 import org.keycloak.testsuite.client.KeycloakTestingClient;
 import org.keycloak.testsuite.util.LogChecker;
 import org.keycloak.testsuite.util.OAuthClient;
+import org.wildfly.extras.creaper.core.ManagementClient;
+import org.wildfly.extras.creaper.core.online.OnlineManagementClient;
+import org.wildfly.extras.creaper.core.online.OnlineOptions;
 
 import java.io.IOException;
 import java.net.MalformedURLException;
@@ -117,6 +120,22 @@ public class AuthServerTestEnricher {
         return String.format("%s://%s:%s", scheme, host, port + clusterPortOffset);
     }
 
+    public static OnlineManagementClient getManagementClient() {
+        OnlineManagementClient managementClient;
+        try {
+            managementClient = ManagementClient.online(OnlineOptions
+                    .standalone()
+                    .hostAndPort(System.getProperty("auth.server.host", "localhost"), Integer.parseInt(System.getProperty("auth.server.management.port", "10090")))
+                    .build()
+            );
+        } catch (IOException e) {
+            throw new RuntimeException(e);
+        }
+
+
+        return managementClient;
+    }
+
     public void initializeSuiteContext(@Observes(precedence = 2) BeforeSuite event) {
         Set<ContainerInfo> containers = containerRegistry.get().getContainers().stream()
           .map(ContainerInfo::new)
diff --git a/testsuite/integration-arquillian/tests/base/src/main/java/org/keycloak/testsuite/arquillian/DeploymentArchiveProcessor.java b/testsuite/integration-arquillian/tests/base/src/main/java/org/keycloak/testsuite/arquillian/DeploymentArchiveProcessor.java
index 79b0365..0df9a97 100644
--- a/testsuite/integration-arquillian/tests/base/src/main/java/org/keycloak/testsuite/arquillian/DeploymentArchiveProcessor.java
+++ b/testsuite/integration-arquillian/tests/base/src/main/java/org/keycloak/testsuite/arquillian/DeploymentArchiveProcessor.java
@@ -144,7 +144,7 @@ public class DeploymentArchiveProcessor implements ApplicationArchiveProcessor {
                 if (authServerSslRequired) {
                     modifyDocElementAttribute(doc, "SingleSignOnService", "bindingUrl", "8080", System.getProperty("auth.server.https.port"));
                     modifyDocElementAttribute(doc, "SingleSignOnService", "bindingUrl", "http", "https");
-                    modifyDocElementAttribute(doc, "SingleSignOnService", "assertionConsumerServiceUrl", "8081", System.getProperty("app.server.http.port"));
+                    modifyDocElementAttribute(doc, "SingleSignOnService", "assertionConsumerServiceUrl", "8081", System.getProperty("app.server.https.port"));
                     modifyDocElementAttribute(doc, "SingleSignOnService", "assertionConsumerServiceUrl", "http", "https");
                     modifyDocElementAttribute(doc, "SingleLogoutService", "postBindingUrl", "8080", System.getProperty("auth.server.https.port"));
                     modifyDocElementAttribute(doc, "SingleLogoutService", "postBindingUrl", "http", "https");
diff --git a/testsuite/integration-arquillian/tests/base/src/main/java/org/keycloak/testsuite/pages/social/FacebookLoginPage.java b/testsuite/integration-arquillian/tests/base/src/main/java/org/keycloak/testsuite/pages/social/FacebookLoginPage.java
index e0909db..7de9d86 100644
--- a/testsuite/integration-arquillian/tests/base/src/main/java/org/keycloak/testsuite/pages/social/FacebookLoginPage.java
+++ b/testsuite/integration-arquillian/tests/base/src/main/java/org/keycloak/testsuite/pages/social/FacebookLoginPage.java
@@ -35,6 +35,7 @@ public class FacebookLoginPage extends AbstractSocialLoginPage {
 
     @Override
     public void login(String user, String password) {
+        emailInput.clear();
         emailInput.sendKeys(user);
         passwordInput.sendKeys(password);
         loginButton.click();
diff --git a/testsuite/integration-arquillian/tests/base/src/main/java/org/keycloak/testsuite/pages/social/GitHubLoginPage.java b/testsuite/integration-arquillian/tests/base/src/main/java/org/keycloak/testsuite/pages/social/GitHubLoginPage.java
index 328d4b6..fdf35ad 100644
--- a/testsuite/integration-arquillian/tests/base/src/main/java/org/keycloak/testsuite/pages/social/GitHubLoginPage.java
+++ b/testsuite/integration-arquillian/tests/base/src/main/java/org/keycloak/testsuite/pages/social/GitHubLoginPage.java
@@ -35,6 +35,7 @@ public class GitHubLoginPage extends AbstractSocialLoginPage {
 
     @Override
     public void login(String user, String password) {
+        usernameInput.clear();
         usernameInput.sendKeys(user);
         passwordInput.sendKeys(password);
         loginButton.click();
diff --git a/testsuite/integration-arquillian/tests/base/src/main/java/org/keycloak/testsuite/pages/social/GoogleLoginPage.java b/testsuite/integration-arquillian/tests/base/src/main/java/org/keycloak/testsuite/pages/social/GoogleLoginPage.java
index 529a225..dee2ae6 100644
--- a/testsuite/integration-arquillian/tests/base/src/main/java/org/keycloak/testsuite/pages/social/GoogleLoginPage.java
+++ b/testsuite/integration-arquillian/tests/base/src/main/java/org/keycloak/testsuite/pages/social/GoogleLoginPage.java
@@ -41,6 +41,7 @@ public class GoogleLoginPage extends AbstractSocialLoginPage {
             firstAccount.click();
         }
         catch (NoSuchElementException e) {
+            emailInput.clear();
             emailInput.sendKeys(user);
             emailInput.sendKeys(Keys.RETURN);
         }
diff --git a/testsuite/integration-arquillian/tests/base/src/main/java/org/keycloak/testsuite/pages/social/LinkedInLoginPage.java b/testsuite/integration-arquillian/tests/base/src/main/java/org/keycloak/testsuite/pages/social/LinkedInLoginPage.java
index d8332ad..e2b7e51 100644
--- a/testsuite/integration-arquillian/tests/base/src/main/java/org/keycloak/testsuite/pages/social/LinkedInLoginPage.java
+++ b/testsuite/integration-arquillian/tests/base/src/main/java/org/keycloak/testsuite/pages/social/LinkedInLoginPage.java
@@ -35,6 +35,7 @@ public class LinkedInLoginPage extends AbstractSocialLoginPage {
 
     @Override
     public void login(String user, String password) {
+        usernameInput.clear();
         usernameInput.sendKeys(user);
         passwordInput.sendKeys(password);
         loginButton.click();
diff --git a/testsuite/integration-arquillian/tests/base/src/main/java/org/keycloak/testsuite/pages/social/MicrosoftLoginPage.java b/testsuite/integration-arquillian/tests/base/src/main/java/org/keycloak/testsuite/pages/social/MicrosoftLoginPage.java
index f9e507c..bb6f4ea 100644
--- a/testsuite/integration-arquillian/tests/base/src/main/java/org/keycloak/testsuite/pages/social/MicrosoftLoginPage.java
+++ b/testsuite/integration-arquillian/tests/base/src/main/java/org/keycloak/testsuite/pages/social/MicrosoftLoginPage.java
@@ -35,6 +35,7 @@ public class MicrosoftLoginPage extends AbstractSocialLoginPage {
 
     @Override
     public void login(String user, String password) {
+        usernameInput.clear();
         usernameInput.sendKeys(user);
         submitButton.click();
         passwordInput.sendKeys(password);
diff --git a/testsuite/integration-arquillian/tests/base/src/main/java/org/keycloak/testsuite/pages/social/StackOverflowLoginPage.java b/testsuite/integration-arquillian/tests/base/src/main/java/org/keycloak/testsuite/pages/social/StackOverflowLoginPage.java
index 8302f01..ca61109 100644
--- a/testsuite/integration-arquillian/tests/base/src/main/java/org/keycloak/testsuite/pages/social/StackOverflowLoginPage.java
+++ b/testsuite/integration-arquillian/tests/base/src/main/java/org/keycloak/testsuite/pages/social/StackOverflowLoginPage.java
@@ -48,6 +48,7 @@ public class StackOverflowLoginPage extends AbstractSocialLoginPage {
 
         driver.switchTo().frame(loginFrame);
 
+        usernameInput.clear();
         usernameInput.sendKeys(user);
         passwordInput.sendKeys(password);
 
diff --git a/testsuite/integration-arquillian/tests/base/src/main/java/org/keycloak/testsuite/pages/social/TwitterLoginPage.java b/testsuite/integration-arquillian/tests/base/src/main/java/org/keycloak/testsuite/pages/social/TwitterLoginPage.java
index 911afcf..9806b27 100644
--- a/testsuite/integration-arquillian/tests/base/src/main/java/org/keycloak/testsuite/pages/social/TwitterLoginPage.java
+++ b/testsuite/integration-arquillian/tests/base/src/main/java/org/keycloak/testsuite/pages/social/TwitterLoginPage.java
@@ -35,6 +35,7 @@ public class TwitterLoginPage extends AbstractSocialLoginPage {
 
     @Override
     public void login(String user, String password) {
+        usernameInput.clear();
         usernameInput.sendKeys(user);
         passwordInput.sendKeys(password);
         loginButton.click();
diff --git a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/AbstractKeycloakTest.java b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/AbstractKeycloakTest.java
index d2f7de6..9b3e1f9 100644
--- a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/AbstractKeycloakTest.java
+++ b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/AbstractKeycloakTest.java
@@ -18,11 +18,13 @@ package org.keycloak.testsuite;
 
 import org.apache.commons.configuration.ConfigurationException;
 import org.apache.commons.configuration.PropertiesConfiguration;
+import org.junit.BeforeClass;
 import org.keycloak.common.util.KeycloakUriBuilder;
 import org.keycloak.common.util.Time;
 import org.keycloak.testsuite.arquillian.KcArquillian;
 import org.keycloak.testsuite.arquillian.TestContext;
 
+import java.io.IOException;
 import java.net.URI;
 import java.net.URISyntaxException;
 import java.util.ArrayList;
@@ -30,6 +32,7 @@ import java.util.Arrays;
 import java.util.Collections;
 import java.util.List;
 import java.util.Map;
+import java.util.concurrent.TimeoutException;
 
 import javax.ws.rs.NotFoundException;
 import org.jboss.arquillian.container.test.api.RunAsClient;
@@ -65,6 +68,16 @@ import org.keycloak.testsuite.util.OAuthClient;
 import org.keycloak.testsuite.util.TestCleanup;
 import org.keycloak.testsuite.util.TestEventsLogger;
 import org.openqa.selenium.WebDriver;
+import org.wildfly.extras.creaper.commands.undertow.AddUndertowListener;
+import org.wildfly.extras.creaper.commands.undertow.RemoveUndertowListener;
+import org.wildfly.extras.creaper.commands.undertow.UndertowListenerType;
+import org.wildfly.extras.creaper.core.CommandFailedException;
+import org.wildfly.extras.creaper.core.online.CliException;
+import org.wildfly.extras.creaper.core.online.OnlineManagementClient;
+import org.wildfly.extras.creaper.core.online.operations.Address;
+import org.wildfly.extras.creaper.core.online.operations.OperationException;
+import org.wildfly.extras.creaper.core.online.operations.Operations;
+import org.wildfly.extras.creaper.core.online.operations.admin.Administration;
 
 import static org.keycloak.testsuite.admin.Users.setPasswordFor;
 import static org.keycloak.testsuite.auth.page.AuthRealm.ADMIN;
@@ -78,6 +91,8 @@ import static org.keycloak.testsuite.auth.page.AuthRealm.MASTER;
 @RunAsClient
 public abstract class AbstractKeycloakTest {
 
+    protected static final boolean AUTH_SERVER_SSL_REQUIRED = Boolean.parseBoolean(System.getProperty("auth.server.ssl.required", "false"));
+
     protected Logger log = Logger.getLogger(this.getClass());
 
     @ArquillianResource
@@ -122,6 +137,13 @@ public abstract class AbstractKeycloakTest {
 
     private boolean resetTimeOffset;
 
+    @BeforeClass
+    public static void setUpAuthServer() throws Exception {
+        if (AUTH_SERVER_SSL_REQUIRED) {
+            enableHTTPSForAuthServer();
+        }
+    }
+
     @Before
     public void beforeAbstractKeycloakTest() throws Exception {
         adminClient = testContext.getAdminClient();
@@ -155,6 +177,7 @@ public abstract class AbstractKeycloakTest {
         }
 
         oauth.init(adminClient, driver);
+
     }
 
     protected void beforeAbstractKeycloakTestRealmImport() throws Exception {
@@ -307,20 +330,21 @@ public abstract class AbstractKeycloakTest {
         } catch (NotFoundException e) {
         }
     }
-    
+
     public RealmsResource realmsResouce() {
         return adminClient.realms();
     }
 
     /**
      * Creates a user in the given realm and returns its ID.
-     * @param realm Realm name
-     * @param username Username
-     * @param password Password
+     *
+     * @param realm           Realm name
+     * @param username        Username
+     * @param password        Password
      * @param requiredActions
      * @return ID of the newly created user
      */
-    public String createUser(String realm, String username, String password, String ... requiredActions) {
+    public String createUser(String realm, String username, String password, String... requiredActions) {
         List<String> requiredUserActions = Arrays.asList(requiredActions);
 
         UserRepresentation homer = new UserRepresentation();
@@ -359,6 +383,7 @@ public abstract class AbstractKeycloakTest {
 
     /**
      * Sets time offset in seconds that will be added to Time.currentTime() and Time.currentTimeMillis() both for client and server.
+     *
      * @param offset
      */
     public void setTimeOffset(int offset) {
@@ -403,4 +428,27 @@ public abstract class AbstractKeycloakTest {
             throw new RuntimeException(e);
         }
     }
-}
+
+    private static void enableHTTPSForAuthServer() throws IOException, CommandFailedException, TimeoutException, InterruptedException, CliException, OperationException {
+        OnlineManagementClient client = AuthServerTestEnricher.getManagementClient();
+        Administration administration = new Administration(client);
+        Operations operations = new Operations(client);
+
+        if(!operations.exists(Address.coreService("management").and("security-realm", "UndertowRealm"))) {
+            client.execute("/core-service=management/security-realm=UndertowRealm:add()");
+            client.execute("/core-service=management/security-realm=UndertowRealm/server-identity=ssl:add(keystore-relative-to=jboss.server.config.dir,keystore-password=secret,keystore-path=keycloak.jks");
+        }
+
+        client.apply(new RemoveUndertowListener.Builder(UndertowListenerType.HTTPS_LISTENER, "https")
+                .forDefaultServer());
+
+        administration.reloadIfRequired();
+
+        client.apply(new AddUndertowListener.HttpsBuilder("https", "default-server", "https")
+                .securityRealm("UndertowRealm")
+                .build());
+
+        administration.reloadIfRequired();
+        client.close();
+    }
+}
\ No newline at end of file
diff --git a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/adapter/AbstractAdapterTest.java b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/adapter/AbstractAdapterTest.java
index f1edf4a..ab3ebbe 100644
--- a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/adapter/AbstractAdapterTest.java
+++ b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/adapter/AbstractAdapterTest.java
@@ -21,17 +21,32 @@ import org.apache.commons.io.IOUtils;
 import org.jboss.arquillian.graphene.page.Page;
 import org.jboss.shrinkwrap.api.Archive;
 import org.jboss.shrinkwrap.api.asset.StringAsset;
+import org.junit.BeforeClass;
 import org.keycloak.representations.idm.ClientRepresentation;
 import org.keycloak.representations.idm.RealmRepresentation;
 import org.keycloak.testsuite.AbstractAuthTest;
 import org.keycloak.testsuite.adapter.page.AppServerContextRoot;
+import org.keycloak.testsuite.arquillian.AppServerTestEnricher;
 import org.keycloak.testsuite.arquillian.annotation.AppServerContainer;
+import org.wildfly.extras.creaper.commands.undertow.AddUndertowListener;
+import org.wildfly.extras.creaper.commands.undertow.RemoveUndertowListener;
+import org.wildfly.extras.creaper.commands.undertow.UndertowListenerType;
+import org.wildfly.extras.creaper.commands.web.AddConnector;
+import org.wildfly.extras.creaper.commands.web.AddConnectorSslConfig;
+import org.wildfly.extras.creaper.core.CommandFailedException;
+import org.wildfly.extras.creaper.core.online.CliException;
+import org.wildfly.extras.creaper.core.online.OnlineManagementClient;
+import org.wildfly.extras.creaper.core.online.operations.Address;
+import org.wildfly.extras.creaper.core.online.operations.OperationException;
+import org.wildfly.extras.creaper.core.online.operations.Operations;
+import org.wildfly.extras.creaper.core.online.operations.admin.Administration;
 
 import java.io.IOException;
 import java.net.URL;
 import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;
+import java.util.concurrent.TimeoutException;
 
 /**
  *
@@ -43,6 +58,9 @@ public abstract class AbstractAdapterTest extends AbstractAuthTest {
     @Page
     protected AppServerContextRoot appServerContextRootPage;
 
+    protected static final boolean APP_SERVER_SSL_REQUIRED = Boolean.parseBoolean(System.getProperty("app.server.ssl.required", "false"));
+    protected static final String APP_SERVER_CONTAINER = System.getProperty("app.server", "");
+
     public static final String JBOSS_DEPLOYMENT_STRUCTURE_XML = "jboss-deployment-structure.xml";
     public static final URL jbossDeploymentStructure = AbstractServletsAdapterTest.class
             .getResource("/adapter-test/" + JBOSS_DEPLOYMENT_STRUCTURE_XML);
@@ -50,6 +68,13 @@ public abstract class AbstractAdapterTest extends AbstractAuthTest {
     public static final URL tomcatContext = AbstractServletsAdapterTest.class
             .getResource("/adapter-test/" + TOMCAT_CONTEXT_XML);
 
+    @BeforeClass
+    public static void setUpAppServer() throws Exception {
+        if (APP_SERVER_SSL_REQUIRED && (APP_SERVER_CONTAINER.contains("eap") || APP_SERVER_CONTAINER.contains("wildfly"))) { // Other containers need some external configuraiton to run SSL tests
+            enableHTTPSForAppServer();
+        }
+    }
+
     @Override
     public void addTestRealms(List<RealmRepresentation> testRealms) {
         addAdapterTestRealms(testRealms);
@@ -216,4 +241,46 @@ public abstract class AbstractAdapterTest extends AbstractAuthTest {
         }
     }
 
+    private static void enableHTTPSForAppServer() throws CommandFailedException, InterruptedException, TimeoutException, IOException, CliException, OperationException {
+        OnlineManagementClient client = AppServerTestEnricher.getManagementClient();
+        Administration administration = new Administration(client);
+        Operations operations = new Operations(client);
+
+        if(!operations.exists(Address.coreService("management").and("security-realm", "UndertowRealm"))) {
+            client.execute("/core-service=management/security-realm=UndertowRealm:add()");
+            client.execute("/core-service=management/security-realm=UndertowRealm/server-identity=ssl:add(keystore-relative-to=jboss.server.config.dir,keystore-password=secret,keystore-path=adapter.jks");
+        }
+
+        client.execute("/system-property=javax.net.ssl.trustStore:add(value=${jboss.server.config.dir}/keycloak.truststore)");
+        client.execute("/system-property=javax.net.ssl.trustStorePassword:add(value=secret)");
+
+        if (APP_SERVER_CONTAINER.contains("eap6")) {
+            if(!operations.exists(Address.subsystem("web").and("connector", "https"))) {
+                client.apply(new AddConnector.Builder("https")
+                        .protocol("HTTP/1.1")
+                        .scheme("https")
+                        .socketBinding("https")
+                        .secure(true)
+                        .build());
+
+                client.apply(new AddConnectorSslConfig.Builder("https")
+                        .password("secret")
+                        .certificateKeyFile("${jboss.server.config.dir}/adapter.jks")
+                        .build());
+            }
+        } else {
+            client.apply(new RemoveUndertowListener.Builder(UndertowListenerType.HTTPS_LISTENER, "https")
+                    .forDefaultServer());
+
+            administration.reloadIfRequired();
+
+            client.apply(new AddUndertowListener.HttpsBuilder("https", "default-server", "https")
+                    .securityRealm("UndertowRealm")
+                    .build());
+        }
+
+        administration.reloadIfRequired();
+        client.close();
+    }
+
 }
diff --git a/testsuite/integration-arquillian/tests/other/console/src/test/java/org/keycloak/testsuite/console/clients/ClientMappersOIDCTest.java b/testsuite/integration-arquillian/tests/other/console/src/test/java/org/keycloak/testsuite/console/clients/ClientMappersOIDCTest.java
index eaa45de..2330527 100644
--- a/testsuite/integration-arquillian/tests/other/console/src/test/java/org/keycloak/testsuite/console/clients/ClientMappersOIDCTest.java
+++ b/testsuite/integration-arquillian/tests/other/console/src/test/java/org/keycloak/testsuite/console/clients/ClientMappersOIDCTest.java
@@ -35,6 +35,8 @@ import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 
+import static org.hamcrest.CoreMatchers.is;
+import static org.hamcrest.core.IsEqual.equalTo;
 import static org.junit.Assert.*;
 import static org.keycloak.testsuite.auth.page.login.Login.OIDC;
 import static org.keycloak.testsuite.console.clients.AbstractClientTest.createClientRep;
@@ -375,4 +377,23 @@ public class ClientMappersOIDCTest extends AbstractClientTest {
         createClientMappersPage.form().save();
         assertAlertDanger();
     }
+
+    @Test
+    public void testUpdateTokenClaimName() {
+        clientMappersPage.mapperTable().createMapper();
+
+        createClientMappersPage.form().setName("test");
+        createClientMappersPage.form().setTokenClaimName("test");
+        createClientMappersPage.form().save();
+        assertAlertSuccess();
+
+        createClientMappersPage.form().setTokenClaimName("test2");
+        createClientMappersPage.form().save();
+        assertAlertSuccess();
+
+        ProtocolMapperRepresentation mapper = testRealmResource().clients().get(id).getProtocolMappers().getMappers()
+                .stream().filter(m -> m.getName().equals("test")).findFirst().get();
+
+        assertThat(mapper.getConfig().get("claim.name"), is(equalTo("test2")));
+    }
 }
\ No newline at end of file
diff --git a/testsuite/integration-arquillian/tests/pom.xml b/testsuite/integration-arquillian/tests/pom.xml
index d56f3e1..5882b2d 100755
--- a/testsuite/integration-arquillian/tests/pom.xml
+++ b/testsuite/integration-arquillian/tests/pom.xml
@@ -974,6 +974,21 @@
                     <groupId>junit</groupId>
                     <artifactId>junit</artifactId>
                 </dependency>
+
+                <!--Dependencies for creaper:-->
+
+                <dependency>
+                    <groupId>org.wildfly.extras.creaper</groupId>
+                    <artifactId>creaper-commands</artifactId>
+                    <version>${version.org.wildfly.extras.creaper}</version>
+                    <exclusions>
+                        <exclusion>
+                            <groupId>com.google.guava</groupId>
+                            <artifactId>guava</artifactId>
+                        </exclusion>
+                    </exclusions>
+                </dependency>
+
                 <dependency>
                     <groupId>org.jboss.arquillian.junit</groupId>
                     <artifactId>arquillian-junit-container</artifactId>
diff --git a/travis-run-tests.sh b/travis-run-tests.sh
index e3506cf..7776f57 100755
--- a/travis-run-tests.sh
+++ b/travis-run-tests.sh
@@ -15,6 +15,8 @@ if [ $1 == "old" ]; then
     cd testsuite
     mvn test -B -nsu -f integration-deprecated
     mvn test -B -nsu -f jetty
+    mvn test -B -nsu -f proxy
+    mvn test -B -nsu -f tomcat6
     mvn test -B -nsu -f tomcat7
     mvn test -B -nsu -f tomcat8
 fi