summaryrefslogtreecommitdiffstats
path: root/simple/simple-http/src/test/java/org/simpleframework/http/message/TokenConsumerTest.java
diff options
context:
space:
mode:
authormikaelpeltier <mikaelpeltier@google.com>2015-06-24 14:31:11 +0200
committerMikael Peltier <mikaelpeltier@google.com>2015-06-24 14:59:36 +0000
commit04563874ddaac702d6c715eaa89c29b253f4c54e (patch)
treec305fa98670c3e80be494cc054a8e31b51bfe7f2 /simple/simple-http/src/test/java/org/simpleframework/http/message/TokenConsumerTest.java
parentf1828481ebcfee3bddc323fca178a4502a60ceef (diff)
downloadtoolchain_jack-04563874ddaac702d6c715eaa89c29b253f4c54e.zip
toolchain_jack-04563874ddaac702d6c715eaa89c29b253f4c54e.tar.gz
toolchain_jack-04563874ddaac702d6c715eaa89c29b253f4c54e.tar.bz2
Add simpleframework source files
Change-Id: I18d01df16de2868ca5458f79a88e6070b75db2c3 (cherry picked from commit 3e9f84cf7b22f6970eb8041ca38d12d75c6bb270)
Diffstat (limited to 'simple/simple-http/src/test/java/org/simpleframework/http/message/TokenConsumerTest.java')
-rw-r--r--simple/simple-http/src/test/java/org/simpleframework/http/message/TokenConsumerTest.java55
1 files changed, 55 insertions, 0 deletions
diff --git a/simple/simple-http/src/test/java/org/simpleframework/http/message/TokenConsumerTest.java b/simple/simple-http/src/test/java/org/simpleframework/http/message/TokenConsumerTest.java
new file mode 100644
index 0000000..de7461c
--- /dev/null
+++ b/simple/simple-http/src/test/java/org/simpleframework/http/message/TokenConsumerTest.java
@@ -0,0 +1,55 @@
+package org.simpleframework.http.message;
+
+import java.io.IOException;
+
+import junit.framework.TestCase;
+
+import org.simpleframework.common.buffer.Allocator;
+import org.simpleframework.common.buffer.ArrayAllocator;
+import org.simpleframework.http.core.DribbleCursor;
+import org.simpleframework.http.core.StreamCursor;
+import org.simpleframework.http.message.TokenConsumer;
+import org.simpleframework.transport.ByteCursor;
+
+public class TokenConsumerTest extends TestCase {
+
+ public void testTokenConsumer() throws IOException {
+ Allocator allocator = new ArrayAllocator();
+ TokenConsumer consumer = new TokenConsumer(allocator, "\r\n".getBytes());
+ ByteCursor cursor = new StreamCursor("\r\n");
+
+ consumer.consume(cursor);
+
+ assertEquals(cursor.ready(), -1);
+ assertTrue(consumer.isFinished());
+ }
+
+ public void testTokenConsumerException() throws IOException {
+ Allocator allocator = new ArrayAllocator();
+ TokenConsumer consumer = new TokenConsumer(allocator, "\r\n".getBytes());
+ ByteCursor cursor = new StreamCursor("--\r\n");
+ boolean exception = false;
+
+ try {
+ consumer.consume(cursor);
+ } catch(Exception e) {
+ exception = true;
+ }
+ assertTrue("Exception not thrown for invalid token", exception);
+ }
+
+ public void testTokenConsumerDribble() throws IOException {
+ Allocator allocator = new ArrayAllocator();
+ TokenConsumer consumer = new TokenConsumer(allocator, "This is a large token to be consumed\r\n".getBytes());
+ DribbleCursor cursor = new DribbleCursor(new StreamCursor("This is a large token to be consumed\r\n0123456789"), 1);
+
+ consumer.consume(cursor);
+
+ assertEquals(cursor.ready(), 1);
+ assertTrue(consumer.isFinished());
+ assertEquals(cursor.read(), '0');
+ assertEquals(cursor.read(), '1');
+ assertEquals(cursor.read(), '2');
+ }
+
+}