commons-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From rwins...@apache.org
Subject svn commit: r920259 - in /commons/proper/net/branches/NET_2_0/src/test/java/org/apache/commons/net/io: ./ DotTerminatedMessageReaderTest.java
Date Mon, 08 Mar 2010 10:18:47 GMT
Author: rwinston
Date: Mon Mar  8 10:18:47 2010
New Revision: 920259

URL: http://svn.apache.org/viewvc?rev=920259&view=rev
Log:
Fix and test case for NET-290 (incl test case this time)

Added:
    commons/proper/net/branches/NET_2_0/src/test/java/org/apache/commons/net/io/
    commons/proper/net/branches/NET_2_0/src/test/java/org/apache/commons/net/io/DotTerminatedMessageReaderTest.java

Added: commons/proper/net/branches/NET_2_0/src/test/java/org/apache/commons/net/io/DotTerminatedMessageReaderTest.java
URL: http://svn.apache.org/viewvc/commons/proper/net/branches/NET_2_0/src/test/java/org/apache/commons/net/io/DotTerminatedMessageReaderTest.java?rev=920259&view=auto
==============================================================================
--- commons/proper/net/branches/NET_2_0/src/test/java/org/apache/commons/net/io/DotTerminatedMessageReaderTest.java
(added)
+++ commons/proper/net/branches/NET_2_0/src/test/java/org/apache/commons/net/io/DotTerminatedMessageReaderTest.java
Mon Mar  8 10:18:47 2010
@@ -0,0 +1,67 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.commons.net.io;
+
+import java.io.IOException;
+import java.io.StringReader;
+
+import junit.framework.TestCase;
+
+public class DotTerminatedMessageReaderTest extends TestCase {
+	
+	private DotTerminatedMessageReader reader;
+	private StringBuilder str = new StringBuilder();
+	private char[] buf = new char[64];
+	
+	public void testReadSimpleString() throws IOException {
+		final String test = "Hello World!\r\n.\r\n";
+		reader = new DotTerminatedMessageReader(new StringReader(test));
+		
+		int read = 0;
+		while ((read = reader.read(buf)) != -1) {
+			str.append(buf, 0, read-1);
+		}
+		
+		assertEquals(str.toString(), "Hello World!");
+	}
+	
+	public void testEmbeddedNewlines() throws IOException {
+		final String test = "Hello\r\nWorld\nA\rB\r\n.\r\n";
+		reader = new DotTerminatedMessageReader(new StringReader(test));
+		
+		int read = 0;
+		while ((read = reader.read(buf)) != -1) {
+			str.append(buf, 0, read-1);
+		}
+		
+		assertEquals(str.toString(), "Hello\nWorld\nA\rB");
+	}
+	
+	public void testDoubleCrBeforeDot() throws IOException {
+		final String test = "Hello World!\r\r\n.\r\n";
+		reader = new DotTerminatedMessageReader(new StringReader(test));
+		
+		int read = 0;
+		while ((read = reader.read(buf)) != -1) {
+			str.append(buf, 0, read-1);
+		}
+		
+		assertEquals("Hello World!\r",str.toString());
+	}
+
+}



Mime
View raw message