diff --git a/gclc-socket/pom.xml b/gclc-socket/pom.xml
index 167b5a8..52bbe2b 100644
--- a/gclc-socket/pom.xml
+++ b/gclc-socket/pom.xml
@@ -51,7 +51,7 @@
net.bigeon
smu
- 1.0.4
+ 1.0.5
diff --git a/gclc-socket/src/test/java/net/bigeon/gclc/socket/ConsoleTestApplication.java b/gclc-socket/src/test/java/net/bigeon/gclc/socket/ConsoleTestApplication.java
index b9ed097..6399209 100644
--- a/gclc-socket/src/test/java/net/bigeon/gclc/socket/ConsoleTestApplication.java
+++ b/gclc-socket/src/test/java/net/bigeon/gclc/socket/ConsoleTestApplication.java
@@ -118,7 +118,10 @@ public class ConsoleTestApplication {
public void execute(final ConsoleOutput out, final ConsoleInput in,
final String... args) throws CommandRunException {
try {
- Thread.sleep(2000);
+ Object obj = new Object();
+ synchronized (obj) {
+ obj.wait(2000);
+ }
output.println("Test command ran fine");
} catch (IOException | InterruptedException e) {
throw new CommandRunException("manager closed", e);
diff --git a/gclc-socket/src/test/java/net/bigeon/gclc/socket/PluggableConsoleInputTest.java b/gclc-socket/src/test/java/net/bigeon/gclc/socket/PluggableConsoleInputTest.java
index 6528411..2dbaa5c 100644
--- a/gclc-socket/src/test/java/net/bigeon/gclc/socket/PluggableConsoleInputTest.java
+++ b/gclc-socket/src/test/java/net/bigeon/gclc/socket/PluggableConsoleInputTest.java
@@ -90,7 +90,10 @@ public class PluggableConsoleInputTest {
}
try {
- Thread.sleep(100);
+ Object obj = new Object();
+ synchronized (obj) {
+ obj.wait(100);
+ }
} catch (final InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
@@ -112,7 +115,10 @@ public class PluggableConsoleInputTest {
@Override
public void run() {
try {
- Thread.sleep(200);
+ Object obj = new Object();
+ synchronized (obj) {
+ obj.wait(200);
+ }
} catch (final InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
@@ -162,8 +168,11 @@ public class PluggableConsoleInputTest {
});
th.start();
- while (!input.isPrompting()) {
- Thread.sleep(10);
+ Object obj = new Object();
+ synchronized (obj) {
+ while (!input.isPrompting()) {
+ obj.wait(10);
+ }
}
input.connect(pis, out);
@@ -176,7 +185,7 @@ public class PluggableConsoleInputTest {
public void run() {
try {
input.prompt("Test", 5000);
-// fail("Prompt should io");
+// fail("Prompt should io");
} catch (final IOException e) {
// ok
ref.set(e);
@@ -184,8 +193,10 @@ public class PluggableConsoleInputTest {
}
});
th2.start();
- while (!input.isPrompting()) {
- Thread.sleep(10);
+ synchronized (obj) {
+ while (!input.isPrompting()) {
+ obj.wait(10);
+ }
}
input.close();
diff --git a/gclc-socket/src/test/java/net/bigeon/gclc/socket/SocketConsoleApplicationTest.java b/gclc-socket/src/test/java/net/bigeon/gclc/socket/SocketConsoleApplicationTest.java
index ad8a09b..2f506fc 100644
--- a/gclc-socket/src/test/java/net/bigeon/gclc/socket/SocketConsoleApplicationTest.java
+++ b/gclc-socket/src/test/java/net/bigeon/gclc/socket/SocketConsoleApplicationTest.java
@@ -76,7 +76,6 @@ public class SocketConsoleApplicationTest {
public void testIntegration() throws IOException, InterruptedException {
Thread server;
server = TestServer.getServer();
- Thread.sleep(1000);
final String hostName = "127.0.0.1";
final int portNumber = 3300;
@@ -128,11 +127,9 @@ public class SocketConsoleApplicationTest {
}
assertEquals("Application exit command should close connection", 4, i);
}
- Thread.sleep(100);
TestServer.closeServer();
server.join();
server = TestServer.getServer();
- Thread.sleep(1000);
try (Socket kkSocket = new Socket(hostName, portNumber);
PrintWriter out = new PrintWriter(kkSocket.getOutputStream(), true);
diff --git a/gclc-socket/src/test/java/net/bigeon/gclc/socket/TestServer.java b/gclc-socket/src/test/java/net/bigeon/gclc/socket/TestServer.java
index 3f512d7..802a213 100644
--- a/gclc-socket/src/test/java/net/bigeon/gclc/socket/TestServer.java
+++ b/gclc-socket/src/test/java/net/bigeon/gclc/socket/TestServer.java
@@ -90,6 +90,16 @@ public class TestServer {
}
});
th.start();
+ try {
+ Object waiting = new Object();
+ synchronized (waiting) {
+ while (!input.isPrompting()) {
+ waiting.wait(50);
+ }
+ }
+ } catch (InterruptedException e) {
+ Thread.currentThread().interrupt();
+ }
}
return SHELL;
}