This repository has been archived by the owner on Jun 9, 2020. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 157
/
ChunkerTest.java
85 lines (76 loc) · 3.09 KB
/
ChunkerTest.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
package org.neo4j.batchimport.utils;
import org.junit.Test;
import java.io.StringReader;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertSame;
public class ChunkerTest {
@Test
public void testEmptyFile() throws Exception {
Chunker chunker = newChunker("");
assertEquals(Chunker.EOF, chunker.nextWord());
}
@Test
public void testEmptyField() throws Exception {
Chunker chunker = newChunker("\t");
assertEquals(Chunker.NO_VALUE, chunker.nextWord());
assertEquals(Chunker.NO_VALUE, chunker.nextWord());
assertEquals(Chunker.EOF, chunker.nextWord());
}
@Test
public void testEmptyFieldWithNewline() throws Exception {
Chunker chunker = newChunker("\t\n");
assertEquals(Chunker.NO_VALUE, chunker.nextWord());
assertEquals(Chunker.NO_VALUE, chunker.nextWord());
assertEquals(Chunker.EOL, chunker.nextWord());
assertEquals(Chunker.EOF, chunker.nextWord());
}
@Test
public void testEmptyLine() throws Exception {
Chunker chunker = newChunker("\n");
assertEquals(Chunker.NO_VALUE, chunker.nextWord());
assertEquals(Chunker.EOL, chunker.nextWord());
assertEquals(Chunker.EOF, chunker.nextWord());
}
@Test
public void testLineWithFields() throws Exception {
Chunker chunker = newChunker("a\tb\n");
assertEquals("a", chunker.nextWord());
assertEquals("b", chunker.nextWord());
assertEquals(Chunker.EOL, chunker.nextWord());
assertSame(Chunker.EOF, chunker.nextWord());
}
@Test
public void testLineWithEmptyField() throws Exception {
Chunker chunker = newChunker("a\t\tb\n");
assertEquals("a", chunker.nextWord());
assertEquals(Chunker.NO_VALUE, chunker.nextWord());
assertEquals("b", chunker.nextWord());
assertEquals(Chunker.EOL, chunker.nextWord());
assertSame(Chunker.EOF, chunker.nextWord());
}
@Test
public void testLineWithOnlyEmptyFields() throws Exception {
Chunker chunker = newChunker("\t\t\t\n");
assertEquals(Chunker.NO_VALUE, chunker.nextWord());
assertEquals(Chunker.NO_VALUE, chunker.nextWord());
assertEquals(Chunker.NO_VALUE, chunker.nextWord());
assertEquals(Chunker.NO_VALUE, chunker.nextWord());
assertEquals(Chunker.EOL, chunker.nextWord());
assertSame(Chunker.EOF, chunker.nextWord());
}
@Test
public void testLineWithEmptyLines() throws Exception {
Chunker chunker = newChunker("a\t\n\nb\n");
assertEquals("a", chunker.nextWord());
assertEquals(Chunker.NO_VALUE, chunker.nextWord());
assertEquals(Chunker.EOL, chunker.nextWord());
assertEquals(Chunker.NO_VALUE, chunker.nextWord());
assertEquals(Chunker.EOL, chunker.nextWord());
assertEquals("b", chunker.nextWord());
assertEquals(Chunker.EOL, chunker.nextWord());
assertSame(Chunker.EOF, chunker.nextWord());
}
private Chunker newChunker(String lines) {
return new Chunker(new StringReader(lines), '\t');
}
}