@@ -9,8 +9,9 @@ public class StringSplitterTest
99 [ TestMethod ]
1010 public void TestDoubleLineFeed ( )
1111 {
12+ string remainingText = string . Empty ;
1213 string [ ] lines =
13- StringSplitter . SplitIntoLines ( "test\n \n " ) ;
14+ StringSplitter . SplitIntoLines ( "test\n \n " , out remainingText ) ;
1415
1516 Assert . AreEqual ( lines . Length , 2 ) ;
1617 Assert . AreEqual ( lines [ 0 ] , "test" ) ;
@@ -19,8 +20,9 @@ public void TestDoubleLineFeed()
1920 [ TestMethod ]
2021 public void TestDoubleCarriageReturn ( )
2122 {
23+ string remainingText = string . Empty ;
2224 string [ ] lines =
23- StringSplitter . SplitIntoLines ( "test\r \r " ) ;
25+ StringSplitter . SplitIntoLines ( "test\r \r " , out remainingText ) ;
2426
2527 Assert . AreEqual ( lines . Length , 2 ) ;
2628 Assert . AreEqual ( lines [ 0 ] , "test" ) ;
@@ -29,8 +31,9 @@ public void TestDoubleCarriageReturn()
2931 [ TestMethod ]
3032 public void TestDoubleCarriageReturnLineFeedPair ( )
3133 {
34+ string remainingText = string . Empty ;
3235 string [ ] lines =
33- StringSplitter . SplitIntoLines ( "test\r \n \r \n " ) ;
36+ StringSplitter . SplitIntoLines ( "test\r \n \r \n " , out remainingText ) ;
3437
3538 Assert . AreEqual ( lines . Length , 2 ) ;
3639 Assert . AreEqual ( lines [ 0 ] , "test" ) ;
@@ -39,8 +42,9 @@ public void TestDoubleCarriageReturnLineFeedPair()
3942 [ TestMethod ]
4043 public void TestTwoLines ( )
4144 {
45+ string remainingText = string . Empty ;
4246 string [ ] lines =
43- StringSplitter . SplitIntoLines ( "test\n test2\n \n " ) ;
47+ StringSplitter . SplitIntoLines ( "test\n test2\n \n " , out remainingText ) ;
4448
4549 Assert . AreEqual ( lines . Length , 3 ) ;
4650 Assert . AreEqual ( lines [ 0 ] , "test" ) ;
@@ -50,14 +54,36 @@ public void TestTwoLines()
5054 [ TestMethod ]
5155 public void TestMixedSeparators ( )
5256 {
57+ string remainingText = string . Empty ;
5358 string [ ] lines =
54- StringSplitter . SplitIntoLines ( "test\n test2\r \n test3\r \r " ) ;
59+ StringSplitter . SplitIntoLines ( "test\n test2\r \n test3\r \r " , out remainingText ) ;
5560
5661 Assert . AreEqual ( lines . Length , 4 ) ;
5762 Assert . AreEqual ( lines [ 0 ] , "test" ) ;
5863 Assert . AreEqual ( lines [ 1 ] , "test2" ) ;
5964 Assert . AreEqual ( lines [ 2 ] , "test3" ) ;
6065 Assert . AreEqual ( lines [ 3 ] , string . Empty ) ;
66+ Assert . AreEqual ( remainingText , string . Empty ) ;
67+ }
68+ [ TestMethod ]
69+ public void TestRemainingTextNoCompleteRow ( )
70+ {
71+ string remainingText = string . Empty ;
72+ string [ ] lines =
73+ StringSplitter . SplitIntoLines ( "test" , out remainingText ) ;
74+
75+ Assert . AreEqual ( lines . Length , 0 ) ;
76+ Assert . AreEqual ( remainingText , "test" ) ;
77+ }
78+ [ TestMethod ]
79+ public void TestRemainingTextAfterOneRow ( )
80+ {
81+ string remainingText = string . Empty ;
82+ string [ ] lines =
83+ StringSplitter . SplitIntoLines ( "test\n test2" , out remainingText ) ;
84+
85+ Assert . AreEqual ( lines . Length , 1 ) ;
86+ Assert . AreEqual ( remainingText , "test2" ) ;
6187 }
6288 }
6389}
0 commit comments