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
+    }
+
 }


Reply via email to