package org.osgl.util; import org.junit.Before; import org.junit.BeforeClass; import org.junit.Test; import org.osgl.TestBase; import java.io.StringReader; import java.util.List; /** * Test {@link IO} utilities */ public class IOTest extends TestBase { protected static String content; protected static C.List<String> lines; protected static int lineNumber; @BeforeClass public static void prepareContent() { lineNumber = 5 + N.randInt(10); lines = C.newList(); for (int i = 0; i < lineNumber; ++i) { lines.add(S.random()); } content = S.join("\n", lines); } @Test public void readLineWithoutLimit() { List<String> read = IO.readLines(new StringReader(content)); eq(lines, read); } @Test public void readLinesWithLimitLargerThanContentLines() { List<String> read = IO.readLines(new StringReader(content), lineNumber + 5); eq(lines, read); } @Test public void readLinesWithLimitSmallerThanContentLines() { List<String> read = IO.readLines(new StringReader(content), lineNumber - 3); eq(lines.take(lineNumber - 3), read); } }