diff options
Diffstat (limited to 'subprojects/language-web/src/test')
4 files changed, 33 insertions, 35 deletions
diff --git a/subprojects/language-web/src/test/java/tools/refinery/language/web/ProblemWebSocketServletIntegrationTest.java b/subprojects/language-web/src/test/java/tools/refinery/language/web/ProblemWebSocketServletIntegrationTest.java index 652fc13b..6dfce780 100644 --- a/subprojects/language-web/src/test/java/tools/refinery/language/web/ProblemWebSocketServletIntegrationTest.java +++ b/subprojects/language-web/src/test/java/tools/refinery/language/web/ProblemWebSocketServletIntegrationTest.java | |||
@@ -1,17 +1,17 @@ | |||
1 | package tools.refinery.language.web; | 1 | package tools.refinery.language.web; |
2 | 2 | ||
3 | import org.eclipse.jetty.ee10.servlet.ServletContextHandler; | ||
4 | import org.eclipse.jetty.ee10.servlet.ServletHolder; | ||
5 | import org.eclipse.jetty.ee10.websocket.api.Session; | ||
6 | import org.eclipse.jetty.ee10.websocket.api.StatusCode; | ||
7 | import org.eclipse.jetty.ee10.websocket.api.annotations.WebSocket; | ||
8 | import org.eclipse.jetty.ee10.websocket.api.exceptions.UpgradeException; | ||
9 | import org.eclipse.jetty.ee10.websocket.client.ClientUpgradeRequest; | ||
10 | import org.eclipse.jetty.ee10.websocket.client.WebSocketClient; | ||
11 | import org.eclipse.jetty.ee10.websocket.server.config.JettyWebSocketServletContainerInitializer; | ||
3 | import org.eclipse.jetty.http.HttpHeader; | 12 | import org.eclipse.jetty.http.HttpHeader; |
4 | import org.eclipse.jetty.http.HttpStatus; | 13 | import org.eclipse.jetty.http.HttpStatus; |
5 | import org.eclipse.jetty.server.Server; | 14 | import org.eclipse.jetty.server.Server; |
6 | import org.eclipse.jetty.servlet.ServletContextHandler; | ||
7 | import org.eclipse.jetty.servlet.ServletHolder; | ||
8 | import org.eclipse.jetty.websocket.api.Session; | ||
9 | import org.eclipse.jetty.websocket.api.StatusCode; | ||
10 | import org.eclipse.jetty.websocket.api.annotations.WebSocket; | ||
11 | import org.eclipse.jetty.websocket.api.exceptions.UpgradeException; | ||
12 | import org.eclipse.jetty.websocket.client.ClientUpgradeRequest; | ||
13 | import org.eclipse.jetty.websocket.client.WebSocketClient; | ||
14 | import org.eclipse.jetty.websocket.server.config.JettyWebSocketServletContainerInitializer; | ||
15 | import org.eclipse.xtext.testing.GlobalRegistries; | 15 | import org.eclipse.xtext.testing.GlobalRegistries; |
16 | import org.eclipse.xtext.testing.GlobalRegistries.GlobalStateMemento; | 16 | import org.eclipse.xtext.testing.GlobalRegistries.GlobalStateMemento; |
17 | import org.junit.jupiter.api.AfterEach; | 17 | import org.junit.jupiter.api.AfterEach; |
diff --git a/subprojects/language-web/src/test/java/tools/refinery/language/web/tests/AwaitTerminationExecutorServiceProvider.java b/subprojects/language-web/src/test/java/tools/refinery/language/web/tests/AwaitTerminationExecutorServiceProvider.java index b70d0ed5..ebf36f13 100644 --- a/subprojects/language-web/src/test/java/tools/refinery/language/web/tests/AwaitTerminationExecutorServiceProvider.java +++ b/subprojects/language-web/src/test/java/tools/refinery/language/web/tests/AwaitTerminationExecutorServiceProvider.java | |||
@@ -1,16 +1,15 @@ | |||
1 | package tools.refinery.language.web.tests; | 1 | package tools.refinery.language.web.tests; |
2 | 2 | ||
3 | import com.google.inject.Singleton; | ||
4 | import org.eclipse.xtext.ide.ExecutorServiceProvider; | ||
5 | |||
3 | import java.util.ArrayList; | 6 | import java.util.ArrayList; |
4 | import java.util.List; | 7 | import java.util.List; |
5 | import java.util.concurrent.ExecutorService; | 8 | import java.util.concurrent.ExecutorService; |
6 | 9 | ||
7 | import org.eclipse.xtext.ide.ExecutorServiceProvider; | ||
8 | |||
9 | import com.google.inject.Singleton; | ||
10 | |||
11 | @Singleton | 10 | @Singleton |
12 | public class AwaitTerminationExecutorServiceProvider extends ExecutorServiceProvider { | 11 | public class AwaitTerminationExecutorServiceProvider extends ExecutorServiceProvider { |
13 | private List<RestartableCachedThreadPool> servicesToShutDown = new ArrayList<>(); | 12 | private final List<RestartableCachedThreadPool> servicesToShutDown = new ArrayList<>(); |
14 | 13 | ||
15 | @Override | 14 | @Override |
16 | protected ExecutorService createInstance(String key) { | 15 | protected ExecutorService createInstance(String key) { |
diff --git a/subprojects/language-web/src/test/java/tools/refinery/language/web/tests/RestartableCachedThreadPool.java b/subprojects/language-web/src/test/java/tools/refinery/language/web/tests/RestartableCachedThreadPool.java index 1468273d..8e5038ae 100644 --- a/subprojects/language-web/src/test/java/tools/refinery/language/web/tests/RestartableCachedThreadPool.java +++ b/subprojects/language-web/src/test/java/tools/refinery/language/web/tests/RestartableCachedThreadPool.java | |||
@@ -1,45 +1,44 @@ | |||
1 | package tools.refinery.language.web.tests; | 1 | package tools.refinery.language.web.tests; |
2 | 2 | ||
3 | import java.util.Collection; | ||
4 | import java.util.List; | ||
5 | import java.util.concurrent.Callable; | ||
6 | import java.util.concurrent.ExecutionException; | ||
7 | import java.util.concurrent.ExecutorService; | ||
8 | import java.util.concurrent.Executors; | ||
9 | import java.util.concurrent.Future; | ||
10 | import java.util.concurrent.TimeUnit; | ||
11 | import java.util.concurrent.TimeoutException; | ||
12 | |||
13 | import org.slf4j.Logger; | 3 | import org.slf4j.Logger; |
14 | import org.slf4j.LoggerFactory; | 4 | import org.slf4j.LoggerFactory; |
15 | 5 | ||
6 | import java.util.Collection; | ||
7 | import java.util.List; | ||
8 | import java.util.concurrent.*; | ||
9 | |||
10 | @SuppressWarnings("NullableProblems") | ||
16 | public class RestartableCachedThreadPool implements ExecutorService { | 11 | public class RestartableCachedThreadPool implements ExecutorService { |
17 | private static final Logger LOG = LoggerFactory.getLogger(RestartableCachedThreadPool.class); | 12 | private static final Logger LOG = LoggerFactory.getLogger(RestartableCachedThreadPool.class); |
18 | 13 | ||
19 | private ExecutorService delegate; | 14 | private ExecutorService delegate; |
20 | 15 | ||
21 | public RestartableCachedThreadPool() { | 16 | public RestartableCachedThreadPool() { |
22 | delegate = createExecutorService(); | 17 | delegate = createExecutorService(); |
23 | } | 18 | } |
24 | 19 | ||
25 | public void waitForAllTasksToFinish() { | 20 | public void waitForAllTasksToFinish() { |
26 | delegate.shutdown(); | 21 | delegate.shutdown(); |
27 | waitForTermination(); | 22 | waitForTermination(); |
28 | delegate = createExecutorService(); | 23 | delegate = createExecutorService(); |
29 | } | 24 | } |
30 | 25 | ||
31 | public void waitForTermination() { | 26 | public void waitForTermination() { |
27 | boolean result = false; | ||
32 | try { | 28 | try { |
33 | delegate.awaitTermination(1, TimeUnit.SECONDS); | 29 | result = delegate.awaitTermination(1, TimeUnit.SECONDS); |
34 | } catch (InterruptedException e) { | 30 | } catch (InterruptedException e) { |
35 | LOG.warn("Interrupted while waiting for delegate executor to stop", e); | 31 | LOG.warn("Interrupted while waiting for delegate executor to stop", e); |
36 | } | 32 | } |
33 | if (!result) { | ||
34 | throw new IllegalStateException("Failed to shut down Xtext thread pool"); | ||
35 | } | ||
37 | } | 36 | } |
38 | 37 | ||
39 | protected ExecutorService createExecutorService() { | 38 | protected ExecutorService createExecutorService() { |
40 | return Executors.newCachedThreadPool(); | 39 | return Executors.newCachedThreadPool(); |
41 | } | 40 | } |
42 | 41 | ||
43 | @Override | 42 | @Override |
44 | public boolean awaitTermination(long arg0, TimeUnit arg1) throws InterruptedException { | 43 | public boolean awaitTermination(long arg0, TimeUnit arg1) throws InterruptedException { |
45 | return delegate.awaitTermination(arg0, arg1); | 44 | return delegate.awaitTermination(arg0, arg1); |
diff --git a/subprojects/language-web/src/test/java/tools/refinery/language/web/tests/WebSocketIntegrationTestClient.java b/subprojects/language-web/src/test/java/tools/refinery/language/web/tests/WebSocketIntegrationTestClient.java index 74695c9a..f19c10ca 100644 --- a/subprojects/language-web/src/test/java/tools/refinery/language/web/tests/WebSocketIntegrationTestClient.java +++ b/subprojects/language-web/src/test/java/tools/refinery/language/web/tests/WebSocketIntegrationTestClient.java | |||
@@ -1,10 +1,10 @@ | |||
1 | package tools.refinery.language.web.tests; | 1 | package tools.refinery.language.web.tests; |
2 | 2 | ||
3 | import org.eclipse.jetty.websocket.api.Session; | 3 | import org.eclipse.jetty.ee10.websocket.api.Session; |
4 | import org.eclipse.jetty.websocket.api.annotations.OnWebSocketClose; | 4 | import org.eclipse.jetty.ee10.websocket.api.annotations.OnWebSocketClose; |
5 | import org.eclipse.jetty.websocket.api.annotations.OnWebSocketConnect; | 5 | import org.eclipse.jetty.ee10.websocket.api.annotations.OnWebSocketConnect; |
6 | import org.eclipse.jetty.websocket.api.annotations.OnWebSocketError; | 6 | import org.eclipse.jetty.ee10.websocket.api.annotations.OnWebSocketError; |
7 | import org.eclipse.jetty.websocket.api.annotations.OnWebSocketMessage; | 7 | import org.eclipse.jetty.ee10.websocket.api.annotations.OnWebSocketMessage; |
8 | 8 | ||
9 | import java.io.IOException; | 9 | import java.io.IOException; |
10 | import java.time.Duration; | 10 | import java.time.Duration; |