From 5de5566591c3fa67edee667e482cbde9312227ee Mon Sep 17 00:00:00 2001 From: Simon Brandhof Date: Fri, 12 Sep 2014 20:27:24 +0200 Subject: [PATCH] SONAR-4898 improve (again) stability of WatcherThreadTest --- .../sonar/process/monitor/WatcherThreadTest.java | 16 ++-------------- 1 file changed, 2 insertions(+), 14 deletions(-) diff --git a/server/sonar-process-monitor/src/test/java/org/sonar/process/monitor/WatcherThreadTest.java b/server/sonar-process-monitor/src/test/java/org/sonar/process/monitor/WatcherThreadTest.java index 251dcdb21ea..5c953c1fef9 100644 --- a/server/sonar-process-monitor/src/test/java/org/sonar/process/monitor/WatcherThreadTest.java +++ b/server/sonar-process-monitor/src/test/java/org/sonar/process/monitor/WatcherThreadTest.java @@ -24,35 +24,23 @@ import org.mockito.Mockito; import org.mockito.invocation.InvocationOnMock; import org.mockito.stubbing.Answer; -import java.util.concurrent.atomic.AtomicBoolean; - -import static org.mockito.Mockito.mock; -import static org.mockito.Mockito.verify; -import static org.mockito.Mockito.when; +import static org.mockito.Mockito.*; public class WatcherThreadTest { @Test(timeout = 10000L) public void kill_process_if_watcher_is_interrupted() throws Exception { ProcessRef ref = mock(ProcessRef.class, Mockito.RETURNS_DEEP_STUBS); - final AtomicBoolean waiting = new AtomicBoolean(false); when(ref.getProcess().waitFor()).thenAnswer(new Answer() { @Override public Object answer(InvocationOnMock invocationOnMock) throws Throwable { - waiting.set(true); - Thread.sleep(Long.MAX_VALUE); - return 0; + throw new InterruptedException(); } }); Monitor monitor = mock(Monitor.class); WatcherThread watcher = new WatcherThread(ref, monitor); watcher.start(); - - while (!waiting.get()) { - Thread.sleep(50L); - } - watcher.interrupt(); verify(ref).hardKill(); } } -- 2.39.5