Fix test issues (#5137)
Signed-off-by: Jorge Bescos Gascon <jorge.bescos.gascon@oracle.com>
diff --git a/connectors/jdk-connector/src/test/java/org/glassfish/jersey/jdk/connector/internal/StressTest.java b/connectors/jdk-connector/src/test/java/org/glassfish/jersey/jdk/connector/internal/StressTest.java
deleted file mode 100644
index ed43c08..0000000
--- a/connectors/jdk-connector/src/test/java/org/glassfish/jersey/jdk/connector/internal/StressTest.java
+++ /dev/null
@@ -1,87 +0,0 @@
-/*
- * Copyright (c) 2021 Oracle and/or its affiliates. All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v. 2.0, which is available at
- * http://www.eclipse.org/legal/epl-2.0.
- *
- * This Source Code may also be made available under the following Secondary
- * Licenses when the conditions for such availability set forth in the
- * Eclipse Public License v. 2.0 are satisfied: GNU General Public License,
- * version 2 with the GNU Classpath Exception, which is available at
- * https://www.gnu.org/software/classpath/license.html.
- *
- * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
- */
-
-package org.glassfish.jersey.jdk.connector.internal;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertTrue;
-
-import java.util.ArrayList;
-import java.util.List;
-import java.util.concurrent.ExecutionException;
-import java.util.concurrent.ExecutorService;
-import java.util.concurrent.Executors;
-import java.util.concurrent.Future;
-import java.util.concurrent.TimeUnit;
-
-import javax.ws.rs.GET;
-import javax.ws.rs.Path;
-import javax.ws.rs.core.Application;
-import javax.ws.rs.core.Response;
-
-import org.glassfish.jersey.client.ClientConfig;
-import org.glassfish.jersey.internal.guava.ThreadFactoryBuilder;
-import org.glassfish.jersey.jdk.connector.JdkConnectorProvider;
-import org.glassfish.jersey.server.ResourceConfig;
-import org.glassfish.jersey.test.JerseyTest;
-import org.glassfish.jersey.test.TestProperties;
-import org.junit.Test;
-
-public class StressTest extends JerseyTest {
-
- private static final int PARALLELISM = 50;
- private static final int ITERATIONS = 1000;
-
- @Path("/test")
- public static class TestResource {
-
- @GET
- public String test() {
- return "test";
- }
- }
-
- @Override
- protected Application configure() {
- enable(TestProperties.LOG_TRAFFIC);
- enable(TestProperties.DUMP_ENTITY);
- return new ResourceConfig(TestResource.class);
- }
-
- @Override
- protected void configureClient(ClientConfig config) {
- config.connectorProvider(new JdkConnectorProvider());
- }
-
- @Test
- public void randomnessStatus200() throws InterruptedException, ExecutionException {
- ExecutorService executor = Executors.newFixedThreadPool(PARALLELISM,
- new ThreadFactoryBuilder().setNameFormat("client-%d").build());
- for (int i = 0; i < ITERATIONS; i++) {
- System.out.println("Iteration " + i);
- List<Future<Response>> responses = new ArrayList<>();
- for (int j = 0; j < 100; j++) {
- Future<Response> future = executor.submit(() -> target("/test").request().get());
- responses.add(future);
- }
- for (Future<Response> response : responses) {
- assertEquals(200, response.get().getStatus());
- }
- }
- executor.shutdown();
- assertTrue(executor.awaitTermination(10, TimeUnit.SECONDS));
- }
-}
diff --git a/tests/integration/jersey-4697/src/test/java/org/glassfish/jersey/tests/integration/jersey4697/MonitoringEventListenerTest.java b/tests/integration/jersey-4697/src/test/java/org/glassfish/jersey/tests/integration/jersey4697/MonitoringEventListenerTest.java
index 578d964..308d342 100644
--- a/tests/integration/jersey-4697/src/test/java/org/glassfish/jersey/tests/integration/jersey4697/MonitoringEventListenerTest.java
+++ b/tests/integration/jersey-4697/src/test/java/org/glassfish/jersey/tests/integration/jersey4697/MonitoringEventListenerTest.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2021 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2021, 2022 Oracle and/or its affiliates. All rights reserved.
*
* This program and the accompanying materials are made available under the
* terms of the Eclipse Public License v. 2.0, which is available at
@@ -52,7 +52,7 @@
public class MonitoringEventListenerTest extends JerseyTest {
- private static final long TIMEOUT = 500;
+ private static final long TIMEOUT = 1000;
private static final String MBEAN_EXCEPTION =
"org.glassfish.jersey:type=MonitoringEventListenerTest,subType=Global,exceptions=ExceptionMapper";
@@ -116,6 +116,7 @@
resourceConfig.property(ServerProperties.MONITORING_ENABLED, true);
resourceConfig.property(ServerProperties.MONITORING_STATISTICS_ENABLED, true);
resourceConfig.property(ServerProperties.MONITORING_STATISTICS_MBEANS_ENABLED, true);
+ // Scheduler will process 1000 events per second
resourceConfig.property(ServerProperties.MONITORING_STATISTICS_REFRESH_INTERVAL, 1);
resourceConfig.setApplicationName("MonitoringEventListenerTest");
return resourceConfig;
@@ -126,17 +127,18 @@
final Long ERRORS_BEFORE_FAIL = 10L;
// Send some requests to process some statistics.
request(ERRORS_BEFORE_FAIL);
- // Give some time to the scheduler to collect data.
+ // Give some time to process events
Thread.sleep(TIMEOUT);
- // All events were consumed by scheduler
+ // Verify the exceptionMapperEvents is empty, because no event of this type was sent yet
queueIsEmpty();
- // Make the scheduler to fail. No more statistics are collected.
+ // Sending one event that will make an internal error in the scheduler.
+ // No new events will be pushed in the queues after this.
makeFailure();
- // Sending again requests
+ // Sending again requests. These events will not be processed, so they will not be counted for statistics.
request(20);
+ // The expectation is that the scheduler is not going to process previous events because there was a failure before.
+ // We give some time before checking that no new errors are registered.
Thread.sleep(TIMEOUT);
- // No new events should be accepted because scheduler is not working.
- queueIsEmpty();
Long monitoredErrors = mappedErrorsFromJMX(MBEAN_EXCEPTION);
assertEquals(ERRORS_BEFORE_FAIL, monitoredErrors);
}