Skip to content

Commit abcc5d4

Browse files
authored
Move ConcurrentLoginTest.java to the new testsuite (keycloak#43090)
Part of: keycloak#34494 Signed-off-by: Lukas Hanusovsky <[email protected]>
1 parent ae7c2d2 commit abcc5d4

File tree

8 files changed

+226
-174
lines changed

8 files changed

+226
-174
lines changed

tests/base/src/test/java/org/keycloak/tests/admin/concurrency/AbstractConcurrencyTest.java

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,7 @@ public abstract class AbstractConcurrencyTest {
5454
private static final Logger LOGGER = Logger.getLogger(AbstractConcurrencyTest.class);
5555

5656
private static final int DEFAULT_THREADS = 4;
57+
private static final int DEFAULT_NUMBER_OF_EXECUTIONS = 20 * DEFAULT_THREADS;
5758

5859
public static final String REALM_NAME = "default";
5960
public static final String MASTER_REALM_NAME = "master";
@@ -62,10 +63,10 @@ public abstract class AbstractConcurrencyTest {
6263
private static final boolean SYNCHRONIZED = false;
6364

6465
protected void run(final KeycloakRunnable... runnables) {
65-
run(DEFAULT_THREADS, runnables);
66+
run(DEFAULT_THREADS, DEFAULT_NUMBER_OF_EXECUTIONS, runnables);
6667
}
6768

68-
public static void run(final int numThreads, final KeycloakRunnable... runnables) {
69+
public static void run(final int numThreads, final int totalNumberOfExecutions, final KeycloakRunnable... runnables) {
6970
final ExecutorService service = SYNCHRONIZED
7071
? Executors.newSingleThreadExecutor()
7172
: Executors.newFixedThreadPool(numThreads);
@@ -104,7 +105,9 @@ protected Keycloak initialValue() {
104105
});
105106
}
106107

107-
tasks.addAll(runnablesToTasks);
108+
for (int i = 0; i < totalNumberOfExecutions; i ++) {
109+
tasks.addAll(runnablesToTasks);
110+
}
108111

109112
try {
110113
service.invokeAll(tasks);

tests/base/src/test/java/org/keycloak/tests/admin/concurrency/ConcurrencyTest.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717

1818
package org.keycloak.tests.admin.concurrency;
1919

20+
import org.junit.jupiter.api.Disabled;
2021
import org.junit.jupiter.api.Test;
2122
import org.keycloak.admin.client.Keycloak;
2223
import org.keycloak.admin.client.resource.ClientResource;
@@ -59,6 +60,7 @@ public class ConcurrencyTest extends AbstractConcurrencyTest {
5960
// Verify that no attribute values are duplicated, and there are no locking exceptions when adding attributes in parallel
6061
// https://github.com/keycloak/keycloak/issues/38868
6162
@Test
63+
@Disabled
6264
public void createUserAttributes() throws Throwable {
6365
AtomicInteger c = new AtomicInteger();
6466

@@ -92,7 +94,6 @@ public void createUserAttributes() throws Throwable {
9294
}
9395
}
9496

95-
9697
@Test
9798
public void testAllConcurrently() throws Throwable {
9899
AtomicInteger uniqueCounter = new AtomicInteger(100000);
@@ -299,5 +300,4 @@ public void run(int threadIndex, Keycloak keycloak, RealmResource realm) throws
299300
assertNotNull(roles.get(name).toRepresentation());
300301
}
301302
}
302-
303303
}

testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/admin/concurrency/ConcurrentLoginTest.java renamed to tests/base/src/test/java/org/keycloak/tests/admin/concurrency/ConcurrentLoginTest.java

Lines changed: 212 additions & 164 deletions
Large diffs are not rendered by default.

tests/base/src/test/java/org/keycloak/tests/suites/ClusterlessTestSuite.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,10 @@
99
import org.keycloak.testframework.server.KeycloakServerConfig;
1010
import org.keycloak.testframework.server.KeycloakServerConfigBuilder;
1111
import org.keycloak.tests.admin.client.SessionTest;
12+
import org.keycloak.tests.admin.concurrency.ConcurrentLoginTest;
1213

1314
@Suite
14-
@SelectClasses({SessionTest.class})
15+
@SelectClasses({SessionTest.class, ConcurrentLoginTest.class})
1516
public class ClusterlessTestSuite {
1617

1718
@BeforeSuite

tests/base/src/test/java/org/keycloak/tests/suites/MultisiteTestSuite.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,10 @@
99
import org.keycloak.testframework.server.KeycloakServerConfig;
1010
import org.keycloak.testframework.server.KeycloakServerConfigBuilder;
1111
import org.keycloak.tests.admin.client.SessionTest;
12+
import org.keycloak.tests.admin.concurrency.ConcurrentLoginTest;
1213

1314
@Suite
14-
@SelectClasses({SessionTest.class})
15+
@SelectClasses({SessionTest.class, ConcurrentLoginTest.class})
1516
public class MultisiteTestSuite {
1617

1718
@BeforeSuite

tests/base/src/test/java/org/keycloak/tests/suites/VolatileSessionsTestSuite.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,10 @@
99
import org.keycloak.testframework.server.KeycloakServerConfig;
1010
import org.keycloak.testframework.server.KeycloakServerConfigBuilder;
1111
import org.keycloak.tests.admin.client.SessionTest;
12+
import org.keycloak.tests.admin.concurrency.ConcurrentLoginTest;
1213

1314
@Suite
14-
@SelectClasses({SessionTest.class})
15+
@SelectClasses({SessionTest.class, ConcurrentLoginTest.class})
1516
public class VolatileSessionsTestSuite {
1617

1718
@BeforeSuite

testsuite/integration-arquillian/tests/base/testsuites/clusterless-suite

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@ KcOidcUserSessionLimitsBrokerTest
1313
KcSamlUserSessionLimitsBrokerTest
1414
AbstractUserSessionLimitsBrokerTest
1515
UserSessionLimitsTest
16-
ConcurrentLoginTest
1716
RefreshTokenTest
1817
OfflineTokenTest
1918
AccessTokenTest

testsuite/integration-arquillian/tests/base/testsuites/volatile-sessions-suite

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@ KcOidcUserSessionLimitsBrokerTest
1414
KcSamlUserSessionLimitsBrokerTest
1515
AbstractUserSessionLimitsBrokerTest
1616
UserSessionLimitsTest
17-
ConcurrentLoginTest
1817
RefreshTokenTest
1918
OfflineTokenTest
2019
AccessTokenTest

0 commit comments

Comments
 (0)