Upgrade dependency on gclc, fixed test.
This commit is contained in:
@@ -39,21 +39,23 @@
|
||||
package fr.bigeon.gclc.manager;
|
||||
|
||||
import static org.junit.Assert.assertNotNull;
|
||||
import static org.junit.Assert.assertNull;
|
||||
import static org.junit.Assert.fail;
|
||||
|
||||
import java.io.BufferedReader;
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
import java.io.InputStreamReader;
|
||||
import java.io.PipedInputStream;
|
||||
import java.io.PipedOutputStream;
|
||||
|
||||
import org.junit.Before;
|
||||
import org.junit.Test;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
/** <p>
|
||||
* TODO
|
||||
*
|
||||
* @author Emmanuel Bigeon
|
||||
*
|
||||
*/
|
||||
* @author Emmanuel Bigeon */
|
||||
public class ReadingRunnableTest {
|
||||
|
||||
/**
|
||||
@@ -61,11 +63,10 @@ public class ReadingRunnableTest {
|
||||
@Before
|
||||
public void setUp() {}
|
||||
|
||||
/**
|
||||
* Test method for {@link fr.bigeon.gclc.manager.ReadingRunnable#getMessage()}.
|
||||
*/
|
||||
/** Test method for
|
||||
* {@link fr.bigeon.gclc.manager.ReadingRunnable#getMessage()}. */
|
||||
@Test
|
||||
public final void testGetMessage(){
|
||||
public final void testGetMessage() {
|
||||
BufferedReader reader = null;
|
||||
ReadingRunnable runnable = new ReadingRunnable(reader);
|
||||
runnable.setRunning(false);
|
||||
@@ -79,11 +80,10 @@ public class ReadingRunnableTest {
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Test method for {@link fr.bigeon.gclc.manager.ReadingRunnable#hasMessage()}.
|
||||
*/
|
||||
/** Test method for
|
||||
* {@link fr.bigeon.gclc.manager.ReadingRunnable#hasMessage()}. */
|
||||
@Test
|
||||
public final void testHasMessage(){
|
||||
public final void testHasMessage() {
|
||||
|
||||
BufferedReader reader = null;
|
||||
ReadingRunnable runnable = new ReadingRunnable(reader);
|
||||
@@ -97,11 +97,53 @@ public class ReadingRunnableTest {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Test method for {@link fr.bigeon.gclc.manager.ReadingRunnable#getWaitForDelivery(java.lang.String)}.
|
||||
*/
|
||||
/** Test method for
|
||||
* {@link fr.bigeon.gclc.manager.ReadingRunnable#getWaitForDelivery(java.lang.String)}.
|
||||
*
|
||||
* @throws InterruptedException */
|
||||
@Test
|
||||
public final void testGetWaitForDelivery(){
|
||||
public final void testGetWaitForDelivery() throws InterruptedException {
|
||||
try (PipedOutputStream out = new PipedOutputStream();
|
||||
InputStream piped = new PipedInputStream(out);
|
||||
BufferedReader reader = new BufferedReader(
|
||||
new InputStreamReader(piped, "UTF-8"))) {
|
||||
final ReadingRunnable runnable = new ReadingRunnable(reader);
|
||||
Thread th0 = new Thread(runnable, "read");
|
||||
th0.start();
|
||||
Thread th = runnable.getWaitForDelivery("");
|
||||
|
||||
final Object start = new Object();
|
||||
|
||||
Thread th2 = new Thread(new Runnable() {
|
||||
|
||||
@Override
|
||||
public void run() {
|
||||
synchronized (start) {
|
||||
start.notify();
|
||||
}
|
||||
try {
|
||||
runnable.getMessage();
|
||||
} catch (IOException e) {
|
||||
// TODO Auto-generated catch block
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
}, "get");
|
||||
synchronized (start) {
|
||||
th2.start();
|
||||
start.wait();
|
||||
}
|
||||
runnable.interrupt();
|
||||
try {
|
||||
th.join();
|
||||
} catch (InterruptedException e) {
|
||||
assertNull(e);
|
||||
}
|
||||
runnable.setRunning(false);
|
||||
out.close();
|
||||
} catch (IOException e1) {
|
||||
assertNull(e1);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user