KEYCLOAK-7517 - adapter tests - EAP6 provider

This commit is contained in:
vramik 2018-06-06 14:45:50 +02:00 committed by Pavel Drozd
parent 7d466be94e
commit 9e42be09d7
55 changed files with 447 additions and 315 deletions

View file

@ -0,0 +1,2 @@
/subsystem=logging/logger=org.keycloak.adapters:add(level=DEBUG)
/subsystem=logging/console-handler=CONSOLE:change-log-level(level=DEBUG)

View file

@ -0,0 +1,17 @@
/subsystem=keycloak/secure-deployment=customer-portal-subsystem.war/:add( \
realm=demo, \
resource=customer-portal-subsystem, \
auth-server-url=${auth.server.actual.protocol:http}://localhost:${auth.server.actual.http.port:8180}/auth, \
ssl-required=EXTERNAL, \
realm-public-key=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCrVrCuTtArbgaZzL1hvh0xtL5mc7o0NqPVnYXkLvgcwiC3BjLGw1tGEGoJaXDuSaRllobm53JBhjx33UNv+5z/UMG4kytBWxheNVKnL6GgqlNabMaFfPLPCF8kAgKnsi79NMo+n6KnSY8YeUmec/p2vjO2NjsSAVcWEQMVhJ31LwIDAQAB \
)
/subsystem=keycloak/secure-deployment=customer-portal-subsystem.war/credential=secret/:add(value=password)
/subsystem=keycloak/secure-deployment=product-portal-subsystem.war/:add( \
realm=demo, \
resource=product-portal-subsystem, \
auth-server-url=${auth.server.actual.protocol:http}://localhost:${auth.server.actual.http.port:8180}/auth, \
ssl-required=EXTERNAL, \
realm-public-key=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCrVrCuTtArbgaZzL1hvh0xtL5mc7o0NqPVnYXkLvgcwiC3BjLGw1tGEGoJaXDuSaRllobm53JBhjx33UNv+5z/UMG4kytBWxheNVKnL6GgqlNabMaFfPLPCF8kAgKnsi79NMo+n6KnSY8YeUmec/p2vjO2NjsSAVcWEQMVhJ31LwIDAQAB \
)
/subsystem=keycloak/secure-deployment=product-portal-subsystem.war/credential=secret/:add(value=password)

View file

@ -0,0 +1,21 @@
batch
/subsystem=jgroups/stack=tcpping:add
/subsystem=jgroups/stack=tcpping/transport=TRANSPORT:add(type=TCP,socket-binding=jgroups-tcp)
/subsystem=jgroups/stack=tcpping:add-protocol(type=TCPPING)
/subsystem=jgroups/stack=tcpping/protocol=TCPPING/property=initial_hosts/:add(value=${initial.hosts:localhost[7900],localhost[8000]})
/subsystem=jgroups/stack=tcpping/protocol=TCPPING/property=port_range:add(value=0)
/subsystem=jgroups/stack=tcpping/protocol=TCPPING/property=num_initial_members:add(value=2)
/subsystem=jgroups/stack=tcpping/protocol=TCPPING/property=timeout:add(value=3000)
/subsystem=jgroups/stack=tcpping:add-protocol(type=MERGE2)
/subsystem=jgroups/stack=tcpping:add-protocol(type=FD_SOCK,socket-binding=jgroups-udp-fd)
/subsystem=jgroups/stack=tcpping:add-protocol(type=FD)
/subsystem=jgroups/stack=tcpping:add-protocol(type=VERIFY_SUSPECT)
/subsystem=jgroups/stack=tcpping:add-protocol(type=pbcast.NAKACK)
/subsystem=jgroups/stack=tcpping:add-protocol(type=UNICAST2)
/subsystem=jgroups/stack=tcpping:add-protocol(type=pbcast.STABLE)
/subsystem=jgroups/stack=tcpping:add-protocol(type=pbcast.GMS)
/subsystem=jgroups/stack=tcpping:add-protocol(type=UFC)
/subsystem=jgroups/stack=tcpping:add-protocol(type=MFC)
/subsystem=jgroups/stack=tcpping:add-protocol(type=FRAG2)
/subsystem=jgroups/stack=tcpping:add-protocol(type=RSVP)
run-batch

View file

@ -0,0 +1,57 @@
set NOPAUSE=true
start "JBoss Server" /b cmd /c %JBOSS_HOME%\bin\standalone.bat --server-config=standalone-ha.xml
set ERROR=0
set TIMEOUT=10
set I=0
ping 127.0.0.1 -n 3 > nul
:wait_for_jboss
call %JBOSS_HOME%\bin\jboss-cli.bat -c --command=":read-attribute(name=server-state)" | findstr "running"
if %ERRORLEVEL% equ 0 goto install_adapters
ping 127.0.0.1 -n 1 > nul
set /a I=%I%+1
if %I% gtr %TIMEOUT% (
set ERROR=1
goto shutdown_jboss
)
goto wait_for_jboss
:install_adapters
call %JBOSS_HOME%\bin\jboss-cli.bat -c --file="%JBOSS_HOME%\bin\adapter-install.cli"
set ERROR=%ERRORLEVEL%
echo Installation of OIDC adapter ended with error code: "%ERROR%"
if %ERROR% neq 0 (
goto shutdown_jboss
)
call %JBOSS_HOME%\bin\jboss-cli.bat -c --file="%JBOSS_HOME%\bin\adapter-install-saml.cli"
set ERROR=%ERRORLEVEL%
echo Installation of SAML adapter ended with error code: "%ERROR%"
if %ERROR% neq 0 (
goto shutdown_jboss
)
call %JBOSS_HOME%\bin\jboss-cli.bat -c --file="%CLI_PATH%\add-adapter-log-level.cli"
set ERROR=%ERRORLEVEL%
echo Adding log level for adapters ended with error code: "%ERROR%"
if %ERROR% neq 0 (
goto shutdown_jboss
)
call %JBOSS_HOME%\bin\jboss-cli.bat -c --file="%CLI_PATH%\configure-cluster-config.cli"
set ERROR=%ERRORLEVEL%
echo Configuring cluster config ended with error code: "%ERROR%"
if %ERROR% neq 0 (
goto shutdown_jboss
)
:shutdown_jboss
echo Shutting down with error code: "%ERROR%"
call %JBOSS_HOME%\bin\jboss-cli.bat -c --command=":shutdown"
exit /b %ERROR%

View file

@ -0,0 +1,50 @@
#!/bin/bash
echo "JBOSS_HOME=$JBOSS_HOME"
if [ ! -d "$JBOSS_HOME/bin" ] ; then
>&2 echo "JBOSS_HOME/bin doesn't exist"
exit 1
fi
cd $JBOSS_HOME/bin
./standalone.sh --server-config=standalone-ha.xml &
sleep 3
TIMEOUT=10
DELAY=1
T=0
RESULT=0
until [ $T -gt $TIMEOUT ]
do
if ./jboss-cli.sh -c --command=":read-attribute(name=server-state)" | grep -q "running" ; then
echo "Server is running. Installing adapter."
./jboss-cli.sh -c --file="adapter-install.cli"
RESULT=$?
echo "Return code of adapter-install:"${RESULT}
./jboss-cli.sh -c --file="adapter-install-saml.cli"
RESULT=$?
echo "Return code of saml adapter-install:"$RESULT
./jboss-cli.sh -c --file="$CLI_PATH/add-adapter-log-level.cli"
./jboss-cli.sh -c --file="$CLI_PATH/configure-cluster-config.cli"
RESULT=$?
echo "Return code:"${RESULT}
./jboss-cli.sh -c --command=":shutdown"
rm -rf $JBOSS_HOME/standalone/data
rm -rf $JBOSS_HOME/standalone/log
echo "Exiting with return code: "$RESULT
exit $RESULT
fi
echo "Server is not running."
sleep $DELAY
let T=$T+$DELAY
done
exit 1

View file

@ -38,6 +38,9 @@ if "%SAML_SUPPORTED%" == "true" (
) )
) )
call %JBOSS_HOME%\bin\jboss-cli.bat -c --file="%CLI_PATH%\add-adapter-log-level.cli"
call %JBOSS_HOME%\bin\jboss-cli.bat -c --file="%CLI_PATH%\add-secured-deployments.cli"
:shutdown_jboss :shutdown_jboss
echo Shutting down with error code: "%ERROR%" echo Shutting down with error code: "%ERROR%"
call %JBOSS_HOME%\bin\jboss-cli.bat -c --command=":shutdown" call %JBOSS_HOME%\bin\jboss-cli.bat -c --command=":shutdown"

View file

@ -32,6 +32,9 @@ do
echo "Return code of saml adapter-install:"$RESULT echo "Return code of saml adapter-install:"$RESULT
fi fi
./jboss-cli.sh -c --file="$CLI_PATH/add-adapter-log-level.cli"
./jboss-cli.sh -c --file="$CLI_PATH/add-secured-deployments.cli"
./jboss-cli.sh -c --command=":shutdown" ./jboss-cli.sh -c --command=":shutdown"
rm -rf $JBOSS_HOME/standalone/data rm -rf $JBOSS_HOME/standalone/data
rm -rf $JBOSS_HOME/standalone/log rm -rf $JBOSS_HOME/standalone/log

View file

@ -26,8 +26,8 @@
<modelVersion>4.0.0</modelVersion> <modelVersion>4.0.0</modelVersion>
<artifactId>integration-arquillian-servers-app-server-eap6</artifactId> <artifactId>integration-arquillian-servers-app-server-eap6</artifactId>
<packaging>pom</packaging> <packaging>jar</packaging>
<name>App Server - JBoss - EAP 6</name> <name>App Server - EAP 6</name>
<properties> <properties>
<app.server.jboss>eap6</app.server.jboss> <app.server.jboss>eap6</app.server.jboss>
@ -42,10 +42,21 @@
<skip.apply.offline.cli>true</skip.apply.offline.cli> <skip.apply.offline.cli>true</skip.apply.offline.cli>
</properties> </properties>
<dependencies>
<dependency>
<groupId>org.keycloak.testsuite</groupId>
<artifactId>integration-arquillian-servers-app-server-spi</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.wildfly.arquillian</groupId>
<artifactId>wildfly-arquillian-container-managed</artifactId>
</dependency>
</dependencies>
<build> <build>
<plugins> <plugins>
<plugin> <plugin>
<artifactId>maven-enforcer-plugin</artifactId> <artifactId>maven-enforcer-plugin</artifactId>
<executions> <executions>
@ -69,7 +80,7 @@
<artifactId>exec-maven-plugin</artifactId> <artifactId>exec-maven-plugin</artifactId>
<executions> <executions>
<execution> <execution>
<id>install-adapters-online</id> <id>install-adapters-online-standalone</id>
<phase>process-resources</phase> <phase>process-resources</phase>
<goals> <goals>
<goal>exec</goal> <goal>exec</goal>
@ -81,6 +92,23 @@
<JAVA_HOME>${app.server.java.home}</JAVA_HOME> <JAVA_HOME>${app.server.java.home}</JAVA_HOME>
<JBOSS_HOME>${app.server.jboss.home}</JBOSS_HOME> <JBOSS_HOME>${app.server.jboss.home}</JBOSS_HOME>
<SAML_SUPPORTED>${app.server.saml.adapter.supported}</SAML_SUPPORTED> <SAML_SUPPORTED>${app.server.saml.adapter.supported}</SAML_SUPPORTED>
<CLI_PATH>${common.resources}/cli/eap6/</CLI_PATH>
</environmentVariables>
</configuration>
</execution>
<execution>
<id>install-adapters-online-standalone-ha</id>
<phase>process-resources</phase>
<goals>
<goal>exec</goal>
</goals>
<configuration>
<executable>${common.resources}/install-adapters-online-ha.${script.suffix}</executable>
<workingDirectory>${app.server.jboss.home}/bin</workingDirectory>
<environmentVariables>
<JAVA_HOME>${app.server.java.home}</JAVA_HOME>
<JBOSS_HOME>${app.server.jboss.home}</JBOSS_HOME>
<CLI_PATH>${common.resources}/cli/eap6/</CLI_PATH>
</environmentVariables> </environmentVariables>
</configuration> </configuration>
</execution> </execution>

View file

@ -0,0 +1,145 @@
/*
* Copyright 2018 Red Hat, Inc. and/or its affiliates
* and other contributors as indicated by the @author tags.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.keycloak.testsuite.arquillian.eap.container;
import java.util.ArrayList;
import java.util.List;
import org.jboss.arquillian.core.spi.Validate;
import org.jboss.as.arquillian.container.managed.ManagedDeployableContainer;
import org.jboss.shrinkwrap.descriptor.spi.node.Node;
import org.keycloak.testsuite.arquillian.container.AppServerContainerProvider;
/**
* @author <a href="mailto:vramik@redhat.com">Vlasta Ramik</a>
*/
public class EAP6AppServerProvider implements AppServerContainerProvider {
private Node configuration;
private static final String containerName = "eap6";
private final String appServerHome;
private final String appServerJavaHome;
private final String appServerPortOffset;
private final String managementProtocol;
private final String managementPort;
private final String startupTimeoutInSeconds;
public EAP6AppServerProvider() {
appServerHome = System.getProperty("app.server.home");
appServerJavaHome = System.getProperty("app.server.java.home");
appServerPortOffset = System.getProperty("app.server.port.offset");
managementProtocol = System.getProperty("app.server.management.protocol");
managementPort = System.getProperty("app.server.management.port");
startupTimeoutInSeconds = System.getProperty("app.server.startup.timeout");
Validate.notNullOrEmpty(appServerHome, "app.server.home is not set.");
Validate.notNullOrEmpty(appServerJavaHome, "app.server.java.home is not set.");
Validate.notNullOrEmpty(appServerPortOffset, "app.server.port.offset is not set.");
Validate.notNullOrEmpty(managementProtocol, "app.server.management.protocol is not set.");
Validate.notNullOrEmpty(managementPort, "app.server.management.port is not set.");
Validate.notNullOrEmpty(startupTimeoutInSeconds, "app.server.startup.timeout is not set.");
}
@Override
public String getName() {
return containerName;
}
@Override
public List<Node> getContainers() {
List<Node> containers = new ArrayList<>();
containers.add(standaloneContainer());
containers.add(clusterGroup());
return containers;
}
private void createChild(String name, String text) {
configuration.createChild("property").attribute("name", name).text(text);
}
private Node standaloneContainer() {
Node container = new Node("container");
container.attribute("mode", "manual");
container.attribute("qualifier", AppServerContainerProvider.APP_SERVER + "-" + containerName);
configuration = container.createChild("configuration");
createChild("enabled", "true");
createChild("adapterImplClass", ManagedDeployableContainer.class.getName());
createChild("jbossHome", appServerHome);
createChild("javaHome", appServerJavaHome);
createChild("jbossArguments",
"-Djboss.socket.binding.port-offset=" + appServerPortOffset + " " +
System.getProperty("adapter.test.props", "")
);
createChild("javaVmArguments",
System.getProperty("app.server.jboss.jvm.debug.args", "") + " " +
System.getProperty("app.server.memory.settings", "") + " " +
"-Djava.net.preferIPv4Stack=true"
);
createChild("managementProtocol", managementProtocol);
createChild("managementPort", managementPort);
createChild("startupTimeoutInSeconds", startupTimeoutInSeconds);
return container;
}
private Node clusterGroup() {
Node group = new Node("group");
group.attribute("qualifier", "app-server-eap-clustered");
addHaNodeContainer(group, 1);
addHaNodeContainer(group, 2);
return group;
}
private void addHaNodeContainer(Node group, int number) {
String portOffset = System.getProperty("app.server." + number + ".port.offset");
String managementPort = System.getProperty("app.server." + number + ".management.port");
Validate.notNullOrEmpty(portOffset, "app.server." + number + ".port.offset is not set.");
Validate.notNullOrEmpty(managementPort, "app.server." + number + ".management.port is not set.");
Node container = group.createChild("container");
container.attribute("mode", "manual");
container.attribute("qualifier", AppServerContainerProvider.APP_SERVER + "-" + containerName + "-ha-node-" + number);
configuration = container.createChild("configuration");
createChild("enabled", "true");
createChild("adapterImplClass", ManagedDeployableContainer.class.getName());
createChild("jbossHome", appServerHome);
createChild("javaHome", appServerJavaHome);
//cleanServerBaseDir cannot be used until WFARQ-44 is fixed
// createChild("cleanServerBaseDir", appServerHome + "/standalone-ha-node-" + number);
createChild("serverConfig", "standalone-ha.xml");
createChild("jbossArguments",
"-Djboss.server.base.dir=" + appServerHome + "/standalone-ha-node-" + number + " " +
"-Djboss.socket.binding.port-offset=" + portOffset + " " +
"-Djboss.node.name=ha-node-" + number + " " +
System.getProperty("adapter.test.props", "")
);
createChild("javaVmArguments",
"-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=790" + number + " " +
System.getProperty("app.server.memory.settings", "") + " " +
"-Djava.net.preferIPv4Stack=true"
);
createChild("managementProtocol", managementProtocol);
createChild("managementPort", managementPort);
createChild("startupTimeoutInSeconds", startupTimeoutInSeconds);
}
}

View file

@ -132,6 +132,10 @@
<version>${project.version}</version> <version>${project.version}</version>
<scope>runtime</scope> <scope>runtime</scope>
</dependency> </dependency>
<dependency>
<groupId>org.wildfly.arquillian</groupId>
<artifactId>wildfly-arquillian-container-managed</artifactId>
</dependency>
</dependencies> </dependencies>
<build> <build>
@ -328,10 +332,6 @@
<version>${project.version}</version> <version>${project.version}</version>
<scope>runtime</scope> <scope>runtime</scope>
</dependency> </dependency>
<dependency>
<groupId>org.wildfly.arquillian</groupId>
<artifactId>wildfly-arquillian-container-managed</artifactId>
</dependency>
<!--required by creaper-core--> <!--required by creaper-core-->
<dependency> <dependency>
<groupId>org.wildfly.core</groupId> <groupId>org.wildfly.core</groupId>
@ -368,10 +368,6 @@
<version>${project.version}</version> <version>${project.version}</version>
<scope>runtime</scope> <scope>runtime</scope>
</dependency> </dependency>
<dependency>
<groupId>org.wildfly.arquillian</groupId>
<artifactId>wildfly-arquillian-container-managed</artifactId>
</dependency>
<!--required by creaper-core--> <!--required by creaper-core-->
<dependency> <dependency>
<groupId>org.wildfly.core</groupId> <groupId>org.wildfly.core</groupId>
@ -389,6 +385,50 @@
</plugins> </plugins>
</build> </build>
</profile> </profile>
<profile>
<id>app-server-eap6</id>
<activation>
<property>
<name>app.server</name>
<value>eap6</value>
</property>
</activation>
<properties>
<app.server>eap6</app.server> <!--in case the profile is called directly-->
<app.server.skip.unpack>false</app.server.skip.unpack>
<arquillian-wildfly-container.version>2.0.0.Final</arquillian-wildfly-container.version>
<infinispan.version>8.2.5.Final</infinispan.version> <!-- KEYCLOAK-5302 -->
<app.server.management.protocol>remote</app.server.management.protocol>
<app.server.management.port>10199</app.server.management.port>
<app.server.1.management.port>10299</app.server.1.management.port>
<app.server.2.management.port>10399</app.server.2.management.port>
</properties>
<dependencies>
<dependency>
<groupId>org.keycloak.testsuite</groupId>
<artifactId>integration-arquillian-servers-app-server-eap6</artifactId>
<version>${project.version}</version>
<scope>runtime</scope>
</dependency>
<!--required by creaper-core-->
<dependency>
<groupId>org.wildfly.core</groupId>
<artifactId>wildfly-cli</artifactId>
<scope>test</scope>
<version>${wildfly10.core.version}</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.commonjava.maven.plugins</groupId>
<artifactId>directory-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</profile>
<profile> <profile>
<id>auth-servers-crossdc-undertow</id> <id>auth-servers-crossdc-undertow</id>
<properties> <properties>

View file

@ -202,6 +202,10 @@ public class AppServerTestEnricher {
return CURRENT_APP_SERVER.equals("tomcat"); return CURRENT_APP_SERVER.equals("tomcat");
} }
public static boolean isEAP6AppServer() {
return CURRENT_APP_SERVER.equals("eap6");
}
public static boolean isWASAppServer() { public static boolean isWASAppServer() {
return CURRENT_APP_SERVER.equals("was"); return CURRENT_APP_SERVER.equals("was");
} }

View file

@ -50,6 +50,7 @@ import java.util.List;
import java.util.Map; import java.util.Map;
import static org.keycloak.testsuite.arquillian.AppServerTestEnricher.hasAppServerContainerAnnotation; import static org.keycloak.testsuite.arquillian.AppServerTestEnricher.hasAppServerContainerAnnotation;
import static org.keycloak.testsuite.arquillian.AppServerTestEnricher.isEAP6AppServer;
import static org.keycloak.testsuite.arquillian.AppServerTestEnricher.isRelative; import static org.keycloak.testsuite.arquillian.AppServerTestEnricher.isRelative;
import static org.keycloak.testsuite.arquillian.AppServerTestEnricher.isTomcatAppServer; import static org.keycloak.testsuite.arquillian.AppServerTestEnricher.isTomcatAppServer;
import static org.keycloak.testsuite.arquillian.AppServerTestEnricher.isWLSAppServer; import static org.keycloak.testsuite.arquillian.AppServerTestEnricher.isWLSAppServer;
@ -263,6 +264,13 @@ public class DeploymentArchiveProcessor implements ApplicationArchiveProcessor {
modifyDocElementValue(webXmlDoc, "auth-method", "KEYCLOAK", "BASIC"); modifyDocElementValue(webXmlDoc, "auth-method", "KEYCLOAK", "BASIC");
} }
//temporary solution, will be removed within KEYCLOAK-7510
if (isEAP6AppServer()) {
modifyDocElementValue(webXmlDoc, "param-value",
"org.keycloak.adapters.saml.wildfly.infinispan.InfinispanSessionCacheIdMapperUpdater",
"org.keycloak.adapters.saml.jbossweb.infinispan.InfinispanSessionCacheIdMapperUpdater");
}
if (testClass.getJavaClass().isAnnotationPresent(UseServletFilter.class)) { if (testClass.getJavaClass().isAnnotationPresent(UseServletFilter.class)) {
addFilterDependencies(archive, testClass); addFilterDependencies(archive, testClass);

View file

@ -26,4 +26,7 @@ public interface ContainerConstants {
public static final String APP_SERVER_EAP = APP_SERVER_PREFIX + "eap"; public static final String APP_SERVER_EAP = APP_SERVER_PREFIX + "eap";
public static final String APP_SERVER_EAP_CLUSTER = APP_SERVER_EAP + "-ha-node-1;" + APP_SERVER_EAP + "-ha-node-2"; public static final String APP_SERVER_EAP_CLUSTER = APP_SERVER_EAP + "-ha-node-1;" + APP_SERVER_EAP + "-ha-node-2";
public static final String APP_SERVER_EAP6 = APP_SERVER_PREFIX + "eap6";
public static final String APP_SERVER_EAP6_CLUSTER = APP_SERVER_EAP6 + "-ha-node-1;" + APP_SERVER_EAP6 + "-ha-node-2";
} }

View file

@ -113,6 +113,10 @@ public class RegistryCreator {
String appServerName = System.getProperty("app.server", "undertow"); String appServerName = System.getProperty("app.server", "undertow");
List<Node> containers = AppServerContainerService.getInstance().getContainers(appServerName); List<Node> containers = AppServerContainerService.getInstance().getContainers(appServerName);
if (containers == null) {
log.warn("None dynamically loaded containers");
return;
}
for (Node container : containers) { for (Node container : containers) {
if (container.getName().equals("container")) { if (container.getName().equals("container")) {
containerDefs.add(new ContainerDefImpl("arquillian.xml", parent, container)); containerDefs.add(new ContainerDefImpl("arquillian.xml", parent, container));

View file

@ -54,9 +54,6 @@ public class URLProvider extends URLResourceProvider {
private static final Set<String> fixedUrls = new HashSet<>(); private static final Set<String> fixedUrls = new HashSet<>();
/*
* TODO: review this for EAP6
*/
@Override @Override
public Object doLookup(ArquillianResource resource, Annotation... qualifiers) { public Object doLookup(ArquillianResource resource, Annotation... qualifiers) {
URL url = (URL) super.doLookup(resource, qualifiers); URL url = (URL) super.doLookup(resource, qualifiers);
@ -97,31 +94,6 @@ public class URLProvider extends URLResourceProvider {
} }
} }
try {
if (System.getProperty("app.server.management.protocol","").equals("remote")) {
if (url == null) {
url = new URL("http://localhost:8080/");
}
URL fixedUrl = url;
if (url.getPort() == 8080) {
for (Annotation a : qualifiers) {
if (OperateOnDeployment.class.isAssignableFrom(a.annotationType())) {
String port = appServerSslRequired ? System.getProperty("app.server.https.port", "8643"):System.getProperty("app.server.http.port", "8280");
String protocol = appServerSslRequired ? "https" : "http";
url = new URL(fixedUrl.toExternalForm().replace("8080", port).replace("http", protocol) + ((OperateOnDeployment) a).value());
}
}
}
if (url.getPort() == 8080) {
url = null;
}
}
} catch (MalformedURLException e) {
e.printStackTrace();
}
// inject context roots if annotation present // inject context roots if annotation present
for (Annotation a : qualifiers) { for (Annotation a : qualifiers) {
if (AuthServerContext.class.isAssignableFrom(a.annotationType())) { if (AuthServerContext.class.isAssignableFrom(a.annotationType())) {

View file

@ -16,6 +16,16 @@
*/ */
package org.keycloak.testsuite.adapter; package org.keycloak.testsuite.adapter;
import static org.hamcrest.Matchers.containsString;
import static org.hamcrest.Matchers.is;
import static org.hamcrest.Matchers.not;
import static org.junit.Assert.assertThat;
import static org.keycloak.testsuite.admin.Users.setPasswordFor;
import static org.keycloak.testsuite.arquillian.DeploymentTargetModifier.APP_SERVER_CURRENT;
import static org.keycloak.testsuite.auth.page.AuthRealm.DEMO;
import static org.keycloak.testsuite.util.IOUtil.loadRealm;
import static org.keycloak.testsuite.util.URLAssert.assertCurrentUrlStartsWith;
import io.undertow.Undertow; import io.undertow.Undertow;
import io.undertow.server.handlers.ResponseCodeHandler; import io.undertow.server.handlers.ResponseCodeHandler;
import io.undertow.server.handlers.proxy.LoadBalancingProxyClient; import io.undertow.server.handlers.proxy.LoadBalancingProxyClient;
@ -35,6 +45,7 @@ import org.apache.http.client.methods.HttpGet;
import org.jboss.arquillian.container.test.api.*; import org.jboss.arquillian.container.test.api.*;
import org.jboss.arquillian.graphene.page.Page; import org.jboss.arquillian.graphene.page.Page;
import org.jboss.arquillian.test.api.ArquillianResource; import org.jboss.arquillian.test.api.ArquillianResource;
import org.jboss.logging.Logger;
import org.junit.*; import org.junit.*;
import org.keycloak.admin.client.resource.RealmResource; import org.keycloak.admin.client.resource.RealmResource;
import org.keycloak.representations.idm.*; import org.keycloak.representations.idm.*;
@ -56,16 +67,6 @@ import org.openqa.selenium.TimeoutException;
import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebDriver;
import org.openqa.selenium.support.ui.WebDriverWait; import org.openqa.selenium.support.ui.WebDriverWait;
import static org.hamcrest.Matchers.containsString;
import static org.hamcrest.Matchers.is;
import static org.hamcrest.Matchers.not;
import static org.junit.Assert.assertThat;
import static org.keycloak.testsuite.admin.Users.setPasswordFor;
import static org.keycloak.testsuite.arquillian.DeploymentTargetModifier.APP_SERVER_CURRENT;
import static org.keycloak.testsuite.auth.page.AuthRealm.DEMO;
import static org.keycloak.testsuite.util.IOUtil.loadRealm;
import static org.keycloak.testsuite.util.URLAssert.assertCurrentUrlStartsWith;
/** /**
* *
* @author hmlnarik * @author hmlnarik
@ -159,6 +160,9 @@ public abstract class AbstractSAMLAdapterClusteredTest extends AbstractServletsA
@After @After
public void stopServers() { public void stopServers() {
deployer.undeploy(EmployeeServletDistributable.DEPLOYMENT_NAME);
deployer.undeploy(EmployeeServletDistributable.DEPLOYMENT_NAME + "_2");
for (ContainerInfo containerInfo : testContext.getAppServerBackendsInfo()) { for (ContainerInfo containerInfo : testContext.getAppServerBackendsInfo()) {
controller.stop(containerInfo.getQualifier()); controller.stop(containerInfo.getQualifier());
} }
@ -231,7 +235,11 @@ public abstract class AbstractSAMLAdapterClusteredTest extends AbstractServletsA
private static void assumeNotElytronAdapter() { private static void assumeNotElytronAdapter() {
if (!AppServerTestEnricher.isUndertowAppServer()) { if (!AppServerTestEnricher.isUndertowAppServer()) {
try { try {
Assume.assumeFalse(FileUtils.readFileToString(Paths.get(System.getProperty("app.server.home"), "standalone", "configuration", "standalone.xml").toFile(), "UTF-8").contains("<security-domain name=\"KeycloakDomain\"")); boolean contains = FileUtils.readFileToString(Paths.get(System.getProperty("app.server.home"), "standalone", "configuration", "standalone.xml").toFile(), "UTF-8").contains("<security-domain name=\"KeycloakDomain\"");
if (contains) {
Logger.getLogger(AbstractSAMLAdapterClusteredTest.class).debug("Elytron adapter installed: skipping");
}
Assume.assumeFalse(contains);
} catch (IOException e) { } catch (IOException e) {
throw new RuntimeException(e); throw new RuntimeException(e);
} }
@ -305,4 +313,4 @@ public abstract class AbstractSAMLAdapterClusteredTest extends AbstractServletsA
WaitUtils.waitForPageToLoad(); WaitUtils.waitForPageToLoad();
assertCurrentUrlStartsWith(loginPage); assertCurrentUrlStartsWith(loginPage);
} }
} }

View file

@ -48,6 +48,7 @@ import static org.keycloak.testsuite.util.IOUtil.loadRealm;
*/ */
@AppServerContainer(ContainerConstants.APP_SERVER_WILDFLY) @AppServerContainer(ContainerConstants.APP_SERVER_WILDFLY)
@AppServerContainer(ContainerConstants.APP_SERVER_EAP) @AppServerContainer(ContainerConstants.APP_SERVER_EAP)
@AppServerContainer(ContainerConstants.APP_SERVER_EAP6)
public class DefaultAuthzConfigAdapterTest extends AbstractExampleAdapterTest { public class DefaultAuthzConfigAdapterTest extends AbstractExampleAdapterTest {
private static final String REALM_NAME = "hello-world-authz"; private static final String REALM_NAME = "hello-world-authz";

View file

@ -32,6 +32,7 @@ import org.keycloak.testsuite.arquillian.containers.ContainerConstants;
*/ */
@AppServerContainer(ContainerConstants.APP_SERVER_WILDFLY) @AppServerContainer(ContainerConstants.APP_SERVER_WILDFLY)
@AppServerContainer(ContainerConstants.APP_SERVER_EAP) @AppServerContainer(ContainerConstants.APP_SERVER_EAP)
@AppServerContainer(ContainerConstants.APP_SERVER_EAP6)
public class PermissiveModeAdapterTest extends AbstractBaseServletAuthzAdapterTest { public class PermissiveModeAdapterTest extends AbstractBaseServletAuthzAdapterTest {
@Deployment(name = RESOURCE_SERVER_ID, managed = false) @Deployment(name = RESOURCE_SERVER_ID, managed = false)

View file

@ -30,6 +30,7 @@ import org.keycloak.testsuite.arquillian.containers.ContainerConstants;
*/ */
@AppServerContainer(ContainerConstants.APP_SERVER_WILDFLY) @AppServerContainer(ContainerConstants.APP_SERVER_WILDFLY)
@AppServerContainer(ContainerConstants.APP_SERVER_EAP) @AppServerContainer(ContainerConstants.APP_SERVER_EAP)
@AppServerContainer(ContainerConstants.APP_SERVER_EAP6)
public class PhotozExampleLazyLoadPathsAdapterTest extends AbstractPhotozExampleAdapterTest { public class PhotozExampleLazyLoadPathsAdapterTest extends AbstractPhotozExampleAdapterTest {
@Deployment(name = PhotozClientAuthzTestApp.DEPLOYMENT_NAME) @Deployment(name = PhotozClientAuthzTestApp.DEPLOYMENT_NAME)

View file

@ -29,6 +29,7 @@ import org.keycloak.testsuite.arquillian.containers.ContainerConstants;
*/ */
@AppServerContainer(ContainerConstants.APP_SERVER_WILDFLY) @AppServerContainer(ContainerConstants.APP_SERVER_WILDFLY)
@AppServerContainer(ContainerConstants.APP_SERVER_EAP) @AppServerContainer(ContainerConstants.APP_SERVER_EAP)
@AppServerContainer(ContainerConstants.APP_SERVER_EAP6)
public class PhotozExampleNoLazyLoadPathsAdapterTest extends AbstractPhotozExampleAdapterTest { public class PhotozExampleNoLazyLoadPathsAdapterTest extends AbstractPhotozExampleAdapterTest {
@Deployment(name = PhotozClientAuthzTestApp.DEPLOYMENT_NAME) @Deployment(name = PhotozClientAuthzTestApp.DEPLOYMENT_NAME)

View file

@ -30,6 +30,7 @@ import org.keycloak.testsuite.arquillian.containers.ContainerConstants;
*/ */
@AppServerContainer(ContainerConstants.APP_SERVER_WILDFLY) @AppServerContainer(ContainerConstants.APP_SERVER_WILDFLY)
@AppServerContainer(ContainerConstants.APP_SERVER_EAP) @AppServerContainer(ContainerConstants.APP_SERVER_EAP)
@AppServerContainer(ContainerConstants.APP_SERVER_EAP6)
public class ServletAuthzCIPAdapterTest extends AbstractServletAuthzAdapterTest { public class ServletAuthzCIPAdapterTest extends AbstractServletAuthzAdapterTest {
@Deployment(name = RESOURCE_SERVER_ID, managed = false) @Deployment(name = RESOURCE_SERVER_ID, managed = false)

View file

@ -32,6 +32,7 @@ import org.keycloak.testsuite.arquillian.containers.ContainerConstants;
*/ */
@AppServerContainer(ContainerConstants.APP_SERVER_WILDFLY) @AppServerContainer(ContainerConstants.APP_SERVER_WILDFLY)
@AppServerContainer(ContainerConstants.APP_SERVER_EAP) @AppServerContainer(ContainerConstants.APP_SERVER_EAP)
@AppServerContainer(ContainerConstants.APP_SERVER_EAP6)
public class ServletAuthzCacheDisabledAdapterTest extends AbstractServletAuthzAdapterTest { public class ServletAuthzCacheDisabledAdapterTest extends AbstractServletAuthzAdapterTest {
@Deployment(name = RESOURCE_SERVER_ID, managed = false) @Deployment(name = RESOURCE_SERVER_ID, managed = false)

View file

@ -31,6 +31,7 @@ import org.keycloak.testsuite.arquillian.containers.ContainerConstants;
*/ */
@AppServerContainer(ContainerConstants.APP_SERVER_WILDFLY) @AppServerContainer(ContainerConstants.APP_SERVER_WILDFLY)
@AppServerContainer(ContainerConstants.APP_SERVER_EAP) @AppServerContainer(ContainerConstants.APP_SERVER_EAP)
@AppServerContainer(ContainerConstants.APP_SERVER_EAP6)
public class ServletAuthzCacheLifespanAdapterTest extends AbstractServletAuthzAdapterTest { public class ServletAuthzCacheLifespanAdapterTest extends AbstractServletAuthzAdapterTest {
@Deployment(name = RESOURCE_SERVER_ID, managed = false) @Deployment(name = RESOURCE_SERVER_ID, managed = false)

View file

@ -30,6 +30,7 @@ import org.keycloak.testsuite.arquillian.containers.ContainerConstants;
*/ */
@AppServerContainer(ContainerConstants.APP_SERVER_WILDFLY) @AppServerContainer(ContainerConstants.APP_SERVER_WILDFLY)
@AppServerContainer(ContainerConstants.APP_SERVER_EAP) @AppServerContainer(ContainerConstants.APP_SERVER_EAP)
@AppServerContainer(ContainerConstants.APP_SERVER_EAP6)
public class ServletAuthzLazyLoadPathsAdapterTest extends AbstractServletAuthzAdapterTest { public class ServletAuthzLazyLoadPathsAdapterTest extends AbstractServletAuthzAdapterTest {
@Deployment(name = RESOURCE_SERVER_ID, managed = false) @Deployment(name = RESOURCE_SERVER_ID, managed = false)

View file

@ -28,6 +28,7 @@ import org.keycloak.testsuite.arquillian.containers.ContainerConstants;
*/ */
@AppServerContainer(ContainerConstants.APP_SERVER_WILDFLY) @AppServerContainer(ContainerConstants.APP_SERVER_WILDFLY)
@AppServerContainer(ContainerConstants.APP_SERVER_EAP) @AppServerContainer(ContainerConstants.APP_SERVER_EAP)
@AppServerContainer(ContainerConstants.APP_SERVER_EAP6)
public class ServletAuthzNoLazyLoadPathsAdapterTest extends AbstractServletAuthzAdapterTest { public class ServletAuthzNoLazyLoadPathsAdapterTest extends AbstractServletAuthzAdapterTest {
@Deployment(name = RESOURCE_SERVER_ID, managed = false) @Deployment(name = RESOURCE_SERVER_ID, managed = false)

View file

@ -54,6 +54,7 @@ import org.openqa.selenium.By;
*/ */
@AppServerContainer(ContainerConstants.APP_SERVER_WILDFLY) @AppServerContainer(ContainerConstants.APP_SERVER_WILDFLY)
@AppServerContainer(ContainerConstants.APP_SERVER_EAP) @AppServerContainer(ContainerConstants.APP_SERVER_EAP)
@AppServerContainer(ContainerConstants.APP_SERVER_EAP6)
public class ServletPolicyEnforcerTest extends AbstractExampleAdapterTest { public class ServletPolicyEnforcerTest extends AbstractExampleAdapterTest {
protected static final String REALM_NAME = "servlet-policy-enforcer-authz"; protected static final String REALM_NAME = "servlet-policy-enforcer-authz";

View file

@ -58,6 +58,7 @@ import static org.keycloak.testsuite.util.WaitUtils.waitUntilElement;
*/ */
@AppServerContainer(ContainerConstants.APP_SERVER_WILDFLY) @AppServerContainer(ContainerConstants.APP_SERVER_WILDFLY)
@AppServerContainer(ContainerConstants.APP_SERVER_EAP) @AppServerContainer(ContainerConstants.APP_SERVER_EAP)
@AppServerContainer(ContainerConstants.APP_SERVER_EAP6)
public class CorsExampleAdapterTest extends AbstractExampleAdapterTest { public class CorsExampleAdapterTest extends AbstractExampleAdapterTest {
public static final String CORS = "cors"; public static final String CORS = "cors";

View file

@ -50,6 +50,7 @@ import org.wildfly.extras.creaper.core.online.operations.Operations;
*/ */
@AppServerContainer(ContainerConstants.APP_SERVER_WILDFLY) @AppServerContainer(ContainerConstants.APP_SERVER_WILDFLY)
@AppServerContainer(ContainerConstants.APP_SERVER_EAP) @AppServerContainer(ContainerConstants.APP_SERVER_EAP)
@AppServerContainer(ContainerConstants.APP_SERVER_EAP6)
public class ConsoleProtectionTest extends AbstractAdapterTest { public class ConsoleProtectionTest extends AbstractAdapterTest {
// Javascript browser needed KEYCLOAK-4703 // Javascript browser needed KEYCLOAK-4703

View file

@ -91,6 +91,7 @@ import static org.keycloak.testsuite.arquillian.DeploymentTargetModifier.AUTH_SE
@AppServerContainer(ContainerConstants.APP_SERVER_UNDERTOW) @AppServerContainer(ContainerConstants.APP_SERVER_UNDERTOW)
@AppServerContainer(ContainerConstants.APP_SERVER_WILDFLY) @AppServerContainer(ContainerConstants.APP_SERVER_WILDFLY)
@AppServerContainer(ContainerConstants.APP_SERVER_EAP) @AppServerContainer(ContainerConstants.APP_SERVER_EAP)
@AppServerContainer(ContainerConstants.APP_SERVER_EAP6)
public class BrokerLinkAndTokenExchangeTest extends AbstractServletsAdapterTest { public class BrokerLinkAndTokenExchangeTest extends AbstractServletsAdapterTest {
public static final String CHILD_IDP = "child"; public static final String CHILD_IDP = "child";
public static final String PARENT_IDP = "parent-idp"; public static final String PARENT_IDP = "parent-idp";

View file

@ -75,6 +75,7 @@ import static org.keycloak.testsuite.admin.ApiUtil.createUserAndResetPasswordWit
@AppServerContainer(ContainerConstants.APP_SERVER_UNDERTOW) @AppServerContainer(ContainerConstants.APP_SERVER_UNDERTOW)
@AppServerContainer(ContainerConstants.APP_SERVER_WILDFLY) @AppServerContainer(ContainerConstants.APP_SERVER_WILDFLY)
@AppServerContainer(ContainerConstants.APP_SERVER_EAP) @AppServerContainer(ContainerConstants.APP_SERVER_EAP)
@AppServerContainer(ContainerConstants.APP_SERVER_EAP6)
public class ClientInitiatedAccountLinkTest extends AbstractServletsAdapterTest { public class ClientInitiatedAccountLinkTest extends AbstractServletsAdapterTest {
public static final String CHILD_IDP = "child"; public static final String CHILD_IDP = "child";
public static final String PARENT_IDP = "parent-idp"; public static final String PARENT_IDP = "parent-idp";

View file

@ -25,6 +25,7 @@ import org.keycloak.testsuite.arquillian.containers.ContainerConstants;
@AppServerContainer(ContainerConstants.APP_SERVER_UNDERTOW) @AppServerContainer(ContainerConstants.APP_SERVER_UNDERTOW)
@AppServerContainer(ContainerConstants.APP_SERVER_WILDFLY) @AppServerContainer(ContainerConstants.APP_SERVER_WILDFLY)
@AppServerContainer(ContainerConstants.APP_SERVER_EAP) @AppServerContainer(ContainerConstants.APP_SERVER_EAP)
@AppServerContainer(ContainerConstants.APP_SERVER_EAP6)
@UseServletFilter(filterName = "oidc-filter", filterClass = "org.keycloak.adapters.servlet.KeycloakOIDCFilter", @UseServletFilter(filterName = "oidc-filter", filterClass = "org.keycloak.adapters.servlet.KeycloakOIDCFilter",
filterDependency = "org.keycloak:keycloak-servlet-filter-adapter", skipPattern = "/error.html") filterDependency = "org.keycloak:keycloak-servlet-filter-adapter", skipPattern = "/error.html")
public class DemoFilterServletAdapterTest extends DemoServletsAdapterTest { public class DemoFilterServletAdapterTest extends DemoServletsAdapterTest {

View file

@ -132,6 +132,7 @@ import static org.keycloak.testsuite.util.WaitUtils.waitForPageToLoad;
@AppServerContainer(ContainerConstants.APP_SERVER_UNDERTOW) @AppServerContainer(ContainerConstants.APP_SERVER_UNDERTOW)
@AppServerContainer(ContainerConstants.APP_SERVER_WILDFLY) @AppServerContainer(ContainerConstants.APP_SERVER_WILDFLY)
@AppServerContainer(ContainerConstants.APP_SERVER_EAP) @AppServerContainer(ContainerConstants.APP_SERVER_EAP)
@AppServerContainer(ContainerConstants.APP_SERVER_EAP6)
public class DemoServletsAdapterTest extends AbstractServletsAdapterTest { public class DemoServletsAdapterTest extends AbstractServletsAdapterTest {
// Javascript browser needed KEYCLOAK-4703 // Javascript browser needed KEYCLOAK-4703
@ -1009,10 +1010,7 @@ public class DemoServletsAdapterTest extends AbstractServletsAdapterTest {
String serverLogContent = FileUtils.readFileToString(serverLog, "UTF-8"); String serverLogContent = FileUtils.readFileToString(serverLog, "UTF-8");
UserRepresentation bburke = ApiUtil.findUserByUsername(testRealmResource(), "bburke@redhat.com"); UserRepresentation bburke = ApiUtil.findUserByUsername(testRealmResource(), "bburke@redhat.com");
Pattern pattern = Pattern.compile("User '" + bburke.getId() + "' invoking '" + appServerUrl + "customer-portal[^\\s]+' on client 'customer-portal'"); //the expected log message has DEBUG level
Matcher matcher = pattern.matcher(serverLogContent);
assertTrue(matcher.find());
assertThat(serverLogContent, containsString("User '" + bburke.getId() + "' invoking '" + appServerUrl + "customer-db/' on client 'customer-db'")); assertThat(serverLogContent, containsString("User '" + bburke.getId() + "' invoking '" + appServerUrl + "customer-db/' on client 'customer-db'"));
} else { } else {
log.info("Checking app server log on app-server: \"" + System.getProperty("app.server") + "\" is not supported."); log.info("Checking app server log on app-server: \"" + System.getProperty("app.server") + "\" is not supported.");

View file

@ -81,6 +81,7 @@ import static org.keycloak.testsuite.util.WaitUtils.waitUntilElement;
@AppServerContainer(ContainerConstants.APP_SERVER_UNDERTOW) @AppServerContainer(ContainerConstants.APP_SERVER_UNDERTOW)
@AppServerContainer(ContainerConstants.APP_SERVER_WILDFLY) @AppServerContainer(ContainerConstants.APP_SERVER_WILDFLY)
@AppServerContainer(ContainerConstants.APP_SERVER_EAP) @AppServerContainer(ContainerConstants.APP_SERVER_EAP)
@AppServerContainer(ContainerConstants.APP_SERVER_EAP6)
public class OIDCPublicKeyRotationAdapterTest extends AbstractServletsAdapterTest { public class OIDCPublicKeyRotationAdapterTest extends AbstractServletsAdapterTest {
@Page @Page

View file

@ -38,6 +38,7 @@ import static org.keycloak.testsuite.util.WaitUtils.waitUntilElement;
@AppServerContainer(ContainerConstants.APP_SERVER_UNDERTOW) @AppServerContainer(ContainerConstants.APP_SERVER_UNDERTOW)
@AppServerContainer(ContainerConstants.APP_SERVER_WILDFLY) @AppServerContainer(ContainerConstants.APP_SERVER_WILDFLY)
@AppServerContainer(ContainerConstants.APP_SERVER_EAP) @AppServerContainer(ContainerConstants.APP_SERVER_EAP)
@AppServerContainer(ContainerConstants.APP_SERVER_EAP6)
public class OfflineServletsAdapterTest extends AbstractServletsAdapterTest { public class OfflineServletsAdapterTest extends AbstractServletsAdapterTest {
@Rule @Rule

View file

@ -13,6 +13,7 @@ import org.keycloak.testsuite.arquillian.containers.ContainerConstants;
*/ */
@AppServerContainer(ContainerConstants.APP_SERVER_WILDFLY) @AppServerContainer(ContainerConstants.APP_SERVER_WILDFLY)
@AppServerContainer(ContainerConstants.APP_SERVER_EAP) @AppServerContainer(ContainerConstants.APP_SERVER_EAP)
@AppServerContainer(ContainerConstants.APP_SERVER_EAP6)
@UseServletFilter(filterName = "saml-filter", filterClass = "org.keycloak.adapters.saml.servlet.SamlFilter", @UseServletFilter(filterName = "saml-filter", filterClass = "org.keycloak.adapters.saml.servlet.SamlFilter",
filterDependency = "org.keycloak:keycloak-saml-servlet-filter-adapter") filterDependency = "org.keycloak:keycloak-saml-servlet-filter-adapter")
public class SAMLFilterServletAdapterTest extends SAMLServletsAdapterTest { public class SAMLFilterServletAdapterTest extends SAMLServletsAdapterTest {

View file

@ -152,6 +152,7 @@ import static org.keycloak.testsuite.util.WaitUtils.*;
*/ */
@AppServerContainer(ContainerConstants.APP_SERVER_WILDFLY) @AppServerContainer(ContainerConstants.APP_SERVER_WILDFLY)
@AppServerContainer(ContainerConstants.APP_SERVER_EAP) @AppServerContainer(ContainerConstants.APP_SERVER_EAP)
@AppServerContainer(ContainerConstants.APP_SERVER_EAP6)
public class SAMLServletsAdapterTest extends AbstractServletsAdapterTest { public class SAMLServletsAdapterTest extends AbstractServletsAdapterTest {
@Page @Page
protected BadClientSalesPostSigServlet badClientSalesPostSigServletPage; protected BadClientSalesPostSigServlet badClientSalesPostSigServletPage;

View file

@ -36,6 +36,7 @@ import static org.keycloak.testsuite.util.URLAssert.assertCurrentUrlStartsWithLo
@AppServerContainer(ContainerConstants.APP_SERVER_WILDFLY) @AppServerContainer(ContainerConstants.APP_SERVER_WILDFLY)
@AppServerContainer(ContainerConstants.APP_SERVER_EAP) @AppServerContainer(ContainerConstants.APP_SERVER_EAP)
@AppServerContainer(ContainerConstants.APP_SERVER_EAP6)
public class SecuredDeploymentsAdapterTest extends AbstractServletsAdapterTest { public class SecuredDeploymentsAdapterTest extends AbstractServletsAdapterTest {
@Page @Page

View file

@ -53,6 +53,7 @@ import static org.keycloak.testsuite.util.URLAssert.assertCurrentUrlStartsWithLo
@AppServerContainer(ContainerConstants.APP_SERVER_UNDERTOW) @AppServerContainer(ContainerConstants.APP_SERVER_UNDERTOW)
@AppServerContainer(ContainerConstants.APP_SERVER_WILDFLY) @AppServerContainer(ContainerConstants.APP_SERVER_WILDFLY)
@AppServerContainer(ContainerConstants.APP_SERVER_EAP) @AppServerContainer(ContainerConstants.APP_SERVER_EAP)
@AppServerContainer(ContainerConstants.APP_SERVER_EAP6)
public class SessionServletAdapterTest extends AbstractServletsAdapterTest { public class SessionServletAdapterTest extends AbstractServletsAdapterTest {
@Page @Page

View file

@ -68,6 +68,7 @@ import static org.keycloak.testsuite.util.URLAssert.assertCurrentUrlStartsWithLo
@AppServerContainer(ContainerConstants.APP_SERVER_UNDERTOW) @AppServerContainer(ContainerConstants.APP_SERVER_UNDERTOW)
@AppServerContainer(ContainerConstants.APP_SERVER_WILDFLY) @AppServerContainer(ContainerConstants.APP_SERVER_WILDFLY)
@AppServerContainer(ContainerConstants.APP_SERVER_EAP) @AppServerContainer(ContainerConstants.APP_SERVER_EAP)
@AppServerContainer(ContainerConstants.APP_SERVER_EAP6)
public class UserStorageConsentTest extends AbstractServletsAdapterTest { public class UserStorageConsentTest extends AbstractServletsAdapterTest {
@Page @Page

View file

@ -34,6 +34,7 @@ import static org.keycloak.testsuite.adapter.AbstractServletsAdapterTest.samlSer
*/ */
@AppServerContainer(ContainerConstants.APP_SERVER_WILDFLY_CLUSTER) @AppServerContainer(ContainerConstants.APP_SERVER_WILDFLY_CLUSTER)
@AppServerContainer(ContainerConstants.APP_SERVER_EAP_CLUSTER) @AppServerContainer(ContainerConstants.APP_SERVER_EAP_CLUSTER)
@AppServerContainer(ContainerConstants.APP_SERVER_EAP6_CLUSTER)
public class SAMLAdapterClusterTest extends AbstractSAMLAdapterClusteredTest { public class SAMLAdapterClusterTest extends AbstractSAMLAdapterClusteredTest {
@TargetsContainer(value = TARGET_CONTAINER_NODE_1) @TargetsContainer(value = TARGET_CONTAINER_NODE_1)

View file

@ -1,29 +0,0 @@
/*
* Copyright 2016 Red Hat, Inc. and/or its affiliates
* and other contributors as indicated by the @author tags.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.keycloak.testsuite.adapter;
import org.keycloak.testsuite.adapter.servlet.ClientInitiatedAccountLinkTest;
import org.keycloak.testsuite.arquillian.annotation.AppServerContainer;
/**
*
* @author <a href="mailto:vramik@redhat.com">Vlastislav Ramik</a>
*/
@AppServerContainer("app-server-eap6")
public class EAP6ClientInitiatedAccountLinkTest extends ClientInitiatedAccountLinkTest {
}

View file

@ -1,13 +0,0 @@
package org.keycloak.testsuite.adapter;
import org.keycloak.testsuite.adapter.servlet.DemoServletsAdapterTest;
import org.keycloak.testsuite.arquillian.annotation.AppServerContainer;
/**
*
* @author tkyjovsk
*/
@AppServerContainer("app-server-eap6")
public class EAP6OIDCAdapterTest extends DemoServletsAdapterTest {
}

View file

@ -1,28 +0,0 @@
/*
* Copyright 2016 Red Hat, Inc. and/or its affiliates
* and other contributors as indicated by the @author tags.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.keycloak.testsuite.adapter;
import org.keycloak.testsuite.adapter.servlet.OIDCPublicKeyRotationAdapterTest;
import org.keycloak.testsuite.arquillian.annotation.AppServerContainer;
/**
* @author <a href="mailto:mposolda@redhat.com">Marek Posolda</a>
*/
@AppServerContainer("app-server-eap6")
public class EAP6OIDCPublicKeyRotationAdapterTest extends OIDCPublicKeyRotationAdapterTest {
}

View file

@ -1,13 +0,0 @@
package org.keycloak.testsuite.adapter;
import org.keycloak.testsuite.adapter.servlet.SessionServletAdapterTest;
import org.keycloak.testsuite.arquillian.annotation.AppServerContainer;
/**
*
* @author tkyjovsk
*/
@AppServerContainer("app-server-eap6")
public class EAP6OIDCSessionAdapterTest extends SessionServletAdapterTest {
}

View file

@ -1,11 +0,0 @@
package org.keycloak.testsuite.adapter;
import org.keycloak.testsuite.adapter.servlet.OfflineServletsAdapterTest;
import org.keycloak.testsuite.arquillian.annotation.AppServerContainer;
/**
* @author <a href="mailto:bruno@abstractj.org">Bruno Oliveira</a>.
*/
@AppServerContainer("app-server-eap6")
public class EAP6OfflineServletsAdapterTest extends OfflineServletsAdapterTest {
}

View file

@ -1,12 +0,0 @@
package org.keycloak.testsuite.adapter;
import org.keycloak.testsuite.adapter.servlet.SAMLServletsAdapterTest;
import org.keycloak.testsuite.arquillian.annotation.AppServerContainer;
/**
* @author mhajas
*/
@AppServerContainer("app-server-eap6")
public class EAP6SAMLAdapterTest extends SAMLServletsAdapterTest {
}

View file

@ -1,11 +0,0 @@
package org.keycloak.testsuite.adapter;
import org.keycloak.testsuite.adapter.servlet.SAMLFilterServletAdapterTest;
import org.keycloak.testsuite.arquillian.annotation.AppServerContainer;
/**
* @author mhajas
*/
@AppServerContainer("app-server-eap6")
public class EAP6SAMLFilterAdapterTest extends SAMLFilterServletAdapterTest {
}

View file

@ -1,13 +0,0 @@
package org.keycloak.testsuite.adapter;
import org.keycloak.testsuite.adapter.servlet.SecuredDeploymentsAdapterTest;
import org.keycloak.testsuite.arquillian.annotation.AppServerContainer;
/**
*
* @author tkyjovsk
*/
@AppServerContainer("app-server-wildfly10")
public class EAP6SecuredDeploymentsAdapterTest extends SecuredDeploymentsAdapterTest {
}

View file

@ -1,28 +0,0 @@
/*
* Copyright 2016 Red Hat, Inc. and/or its affiliates
* and other contributors as indicated by the @author tags.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.keycloak.testsuite.adapter.example.authorization;
import org.keycloak.testsuite.arquillian.annotation.AppServerContainer;
/**
*
* @author tkyjovsk
*/
@AppServerContainer("app-server-eap6")
public class EAP6DefaultAuthzConfigAdapterTest extends DefaultAuthzConfigAdapterTest {
}

View file

@ -1,30 +0,0 @@
/*
* Copyright 2016 Red Hat, Inc. and/or its affiliates
* and other contributors as indicated by the @author tags.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.keycloak.testsuite.adapter.example.authorization;
import org.jboss.arquillian.container.test.api.RunAsClient;
import org.keycloak.testsuite.arquillian.annotation.AppServerContainer;
/**
*
* @author tkyjovsk
*/
@RunAsClient
@AppServerContainer("app-server-eap6")
public class EAP6PermissiveModeAdapterTest extends PermissiveModeAdapterTest {
}

View file

@ -1,29 +0,0 @@
/*
* Copyright 2016 Red Hat, Inc. and/or its affiliates
* and other contributors as indicated by the @author tags.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.keycloak.testsuite.adapter.example.authorization;
import org.keycloak.testsuite.arquillian.annotation.AppServerContainer;
/**
*
* @author tkyjovsk
*/
@AppServerContainer("app-server-eap6")
//@AdapterLibsLocationProperty("adapter.libs.wildfly")
public class EAP6PhotozExampleAdapterTest extends AbstractPhotozExampleAdapterTest {
}

View file

@ -1,30 +0,0 @@
/*
* Copyright 2016 Red Hat, Inc. and/or its affiliates
* and other contributors as indicated by the @author tags.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.keycloak.testsuite.adapter.example.authorization;
import org.jboss.arquillian.container.test.api.RunAsClient;
import org.keycloak.testsuite.arquillian.annotation.AppServerContainer;
/**
*
* @author tkyjovsk
*/
@RunAsClient
@AppServerContainer("app-server-eap6")
public class EAP6ServletAuthzAdapterTest extends AbstractServletAuthzAdapterTest {
}

View file

@ -1,11 +0,0 @@
package org.keycloak.testsuite.adapter.example.cors;
import org.keycloak.testsuite.arquillian.annotation.AppServerContainer;
/**
*
* @author tkyjovsk
*/
@AppServerContainer("app-server-eap6")
public class EAP6CorsExampleAdapterTest extends CorsExampleAdapterTest {
}

View file

@ -95,6 +95,9 @@
<app.server.debug.port>5006</app.server.debug.port> <app.server.debug.port>5006</app.server.debug.port>
<app.server.debug.suspend>n</app.server.debug.suspend> <app.server.debug.suspend>n</app.server.debug.suspend>
<app.server.jboss.jvm.debug.args>-agentlib:jdwp=transport=dt_socket,server=y,suspend=${app.server.debug.suspend},address=localhost:${app.server.debug.port}</app.server.jboss.jvm.debug.args> <app.server.jboss.jvm.debug.args>-agentlib:jdwp=transport=dt_socket,server=y,suspend=${app.server.debug.suspend},address=localhost:${app.server.debug.port}</app.server.jboss.jvm.debug.args>
<!-- Cluster tests are failing with -Xmx512 for insufficient physical memory -->
<app.server.memory.settings>-Xms64m -Xmx384m -XX:MetaspaceSize=96M -XX:MaxMetaspaceSize=256m</app.server.memory.settings>
<app.server.ssl.required>false</app.server.ssl.required>
<cache.server>undefined</cache.server> <cache.server>undefined</cache.server>
<cache.server.container>cache-server-${cache.server}</cache.server.container> <cache.server.container>cache-server-${cache.server}</cache.server.container>