Author: sebb
Date: Tue Mar 15 23:10:26 2011
New Revision: 1081989
URL: http://svn.apache.org/viewvc?rev=1081989&view=rev
Log:
Additional tests
Modified:
commons/proper/net/trunk/src/test/java/org/apache/commons/net/io/DotTerminatedMessageReaderTest.java
Modified:
commons/proper/net/trunk/src/test/java/org/apache/commons/net/io/DotTerminatedMessageReaderTest.java
URL:
http://svn.apache.org/viewvc/commons/proper/net/trunk/src/test/java/org/apache/commons/net/io/DotTerminatedMessageReaderTest.java?rev=1081989&r1=1081988&r2=1081989&view=diff
==============================================================================
---
commons/proper/net/trunk/src/test/java/org/apache/commons/net/io/DotTerminatedMessageReaderTest.java
(original)
+++
commons/proper/net/trunk/src/test/java/org/apache/commons/net/io/DotTerminatedMessageReaderTest.java
Tue Mar 15 23:10:26 2011
@@ -79,4 +79,33 @@ public class DotTerminatedMessageReaderT
assertEquals("Hello World!\r" + SEP,str.toString());
}
+ public void testLeadingDot() throws IOException {
+ final String test = "Hello World!\r\n..text\r\n.\r\n";
+ reader = new DotTerminatedMessageReader(new StringReader(test));
+
+ int read = 0;
+ while ((read = reader.read(buf)) != -1) {
+ str.append(buf, 0, read);
+ }
+
+ assertEquals("Hello World!" + SEP+".text"+SEP,str.toString());
+ }
+
+ // This test agrees with the Javadoc.
+ // However the sequence should not happen for well-behaved NNTP and POP3
servers
+ public void testSingleDotWithTrailingText() throws IOException {
+ final String test = "Hello World!\r\n.text\r\n";
+ reader = new DotTerminatedMessageReader(new StringReader(test));
+
+ int read = 0;
+ while ((read = reader.read(buf)) != -1) {
+ str.append(buf, 0, read);
+ }
+
+ assertEquals("Hello World!" + SEP,str.toString());
+
+ // Note: the StringReader input will still contain "xt\r\n"
+ // because DTMR treats the "te" as CRLF
+ }
+
}