summaryrefslogtreecommitdiffstats
path: root/simple/simple-common/src/test/java/org/simpleframework/common/buffer/queue/BufferQueueTest.java
diff options
context:
space:
mode:
Diffstat (limited to 'simple/simple-common/src/test/java/org/simpleframework/common/buffer/queue/BufferQueueTest.java')
-rw-r--r--simple/simple-common/src/test/java/org/simpleframework/common/buffer/queue/BufferQueueTest.java44
1 files changed, 44 insertions, 0 deletions
diff --git a/simple/simple-common/src/test/java/org/simpleframework/common/buffer/queue/BufferQueueTest.java b/simple/simple-common/src/test/java/org/simpleframework/common/buffer/queue/BufferQueueTest.java
new file mode 100644
index 0000000..22eaba7
--- /dev/null
+++ b/simple/simple-common/src/test/java/org/simpleframework/common/buffer/queue/BufferQueueTest.java
@@ -0,0 +1,44 @@
+package org.simpleframework.common.buffer.queue;
+
+import java.io.InputStream;
+
+import junit.framework.TestCase;
+
+public class BufferQueueTest extends TestCase {
+
+ public void testBufferQueue() throws Exception {
+ final ByteQueue queue = new ArrayByteQueue(1024 * 1000);
+ final BufferQueue buffer = new BufferQueue(queue);
+
+ Thread reader = new Thread(new Runnable() {
+ public void run() {
+ try {
+ InputStream source = buffer.open();
+ for(int i = 0; i < 1000; i++) {
+ int octet = source.read();
+ System.err.write(octet);
+ System.err.flush();
+ }
+ }catch(Exception e) {
+ e.printStackTrace();
+ }
+ }
+ });
+ Thread writer = new Thread(new Runnable() {
+ public void run() {
+ try {
+ for(int i = 0; i < 1000; i++) {
+ buffer.append(("Test message: "+i+"\n").getBytes());
+ }
+ }catch(Exception e) {
+ e.printStackTrace();
+ }
+ }
+ });
+ reader.start();
+ writer.start();
+ reader.join();
+ writer.join();
+ }
+
+}