You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by se...@apache.org on 2012/03/17 19:17:15 UTC
svn commit: r1301971 -
/commons/proper/csv/trunk/src/test/java/org/apache/commons/csv/ExtendedBufferedReaderTest.java
Author: sebb
Date: Sat Mar 17 18:17:15 2012
New Revision: 1301971
URL: http://svn.apache.org/viewvc?rev=1301971&view=rev
Log:
Add test for CSV-75
Modified:
commons/proper/csv/trunk/src/test/java/org/apache/commons/csv/ExtendedBufferedReaderTest.java
Modified: commons/proper/csv/trunk/src/test/java/org/apache/commons/csv/ExtendedBufferedReaderTest.java
URL: http://svn.apache.org/viewvc/commons/proper/csv/trunk/src/test/java/org/apache/commons/csv/ExtendedBufferedReaderTest.java?rev=1301971&r1=1301970&r2=1301971&view=diff
==============================================================================
--- commons/proper/csv/trunk/src/test/java/org/apache/commons/csv/ExtendedBufferedReaderTest.java (original)
+++ commons/proper/csv/trunk/src/test/java/org/apache/commons/csv/ExtendedBufferedReaderTest.java Sat Mar 17 18:17:15 2012
@@ -71,12 +71,12 @@ public class ExtendedBufferedReaderTest
assertEquals('3', br.readAgain());
assertEquals('\n', br.lookAhead());
- assertEquals(1, br.getLineNumber());
+ assertEquals(1, br.getLineNumber()); // will need fixing for CSV-75
assertEquals('3', br.readAgain());
assertEquals('\n', br.read());
- assertEquals(2, br.getLineNumber());
+ assertEquals(2, br.getLineNumber()); // will need fixing for CSV-75
assertEquals('\n', br.readAgain());
- assertEquals(2, br.getLineNumber());
+ assertEquals(2, br.getLineNumber()); // will need fixing for CSV-75
assertEquals(ExtendedBufferedReader.END_OF_STREAM, br.lookAhead());
assertEquals('\n', br.readAgain());
@@ -150,6 +150,39 @@ public class ExtendedBufferedReaderTest
assertTrue(br.readLine() == null);
}
+ /*
+ * Test to illustrate https://issues.apache.org/jira/browse/CSV-75
+ *
+ * TODO fix checks when code is fixed
+ */
+ @Test
+ public void testReadChar() throws Exception {
+ String LF="\n"; String CR="\r"; String CRLF=CR+LF; String LFCR=LF+CR;// easier to read the string below
+ String test="a" + LF + "b" + CR + "c" + LF + LF + "d" + CR + CR + "e" + LFCR + "f "+ CRLF;
+ // EOL eol EOL EOL eol eol EOL+CR EOL
+ // EOL = current EOL behaviour with read() methods
+ // eol = additional behaviour with readLine()
+ final int EOLct=5;
+ final int EOLeolct=9;
+ ExtendedBufferedReader br;
+
+ br = getBufferedReader(test);
+ assertEquals(0, br.getLineNumber());
+ while(br.readLine()!=null) {}
+ assertEquals(EOLeolct, br.getLineNumber());
+
+ br = getBufferedReader(test);
+ assertEquals(0, br.getLineNumber());
+ while(br.read()!=-1) {}
+ assertEquals(EOLct, br.getLineNumber()); // will need fixing for CSV-75
+
+ br = getBufferedReader(test);
+ assertEquals(0, br.getLineNumber());
+ char[] buff = new char[10];
+ while(br.read(buff ,0, 3)!=-1) {}
+ assertEquals(EOLct, br.getLineNumber()); // will need fixing for CSV-75
+ }
+
private ExtendedBufferedReader getBufferedReader(String s) {
return new ExtendedBufferedReader(new StringReader(s));
}