public static LineSeparator detectSeparators(@NotNull CharSequence text) {
int index = indexOfAny(text, "\n\r");
if (index == -1) return null;
- LineSeparator lineSeparator = findStartingLineSeparator(text, index);
+ LineSeparator lineSeparator = getLineSeparatorAt(text, index);
if (lineSeparator == null) {
throw new AssertionError();
}
}
@Nullable
- public static LineSeparator findStartingLineSeparator(@NotNull CharSequence text, int startIndex) {
+ public static LineSeparator getLineSeparatorAt(@NotNull CharSequence text, int startIndex) {
if (startIndex < 0 || startIndex >= text.length()) {
return null;
}
@Test
public void testFindStartingLineSeparator() {
- assertEquals(null, StringUtil.findStartingLineSeparator("", -1));
- assertEquals(null, StringUtil.findStartingLineSeparator("", 0));
- assertEquals(null, StringUtil.findStartingLineSeparator("", 1));
- assertEquals(null, StringUtil.findStartingLineSeparator("\nHello", -1));
- assertEquals(null, StringUtil.findStartingLineSeparator("\nHello", 1));
- assertEquals(null, StringUtil.findStartingLineSeparator("\nH\rel\nlo", 6));
-
- assertEquals(LineSeparator.LF, StringUtil.findStartingLineSeparator("\nHello", 0));
- assertEquals(LineSeparator.LF, StringUtil.findStartingLineSeparator("\nH\rel\nlo", 5));
- assertEquals(LineSeparator.LF, StringUtil.findStartingLineSeparator("Hello\n", 5));
-
- assertEquals(LineSeparator.CR, StringUtil.findStartingLineSeparator("\rH\r\nello", 0));
- assertEquals(LineSeparator.CR, StringUtil.findStartingLineSeparator("Hello\r", 5));
- assertEquals(LineSeparator.CR, StringUtil.findStartingLineSeparator("Hello\b\r", 6));
-
- assertEquals(LineSeparator.CRLF, StringUtil.findStartingLineSeparator("\rH\r\nello", 2));
- assertEquals(LineSeparator.CRLF, StringUtil.findStartingLineSeparator("\r\nH\r\nello", 0));
- assertEquals(LineSeparator.CRLF, StringUtil.findStartingLineSeparator("\r\nH\r\nello\r\n", 9));
+ assertEquals(null, StringUtil.getLineSeparatorAt("", -1));
+ assertEquals(null, StringUtil.getLineSeparatorAt("", 0));
+ assertEquals(null, StringUtil.getLineSeparatorAt("", 1));
+ assertEquals(null, StringUtil.getLineSeparatorAt("\nHello", -1));
+ assertEquals(null, StringUtil.getLineSeparatorAt("\nHello", 1));
+ assertEquals(null, StringUtil.getLineSeparatorAt("\nH\rel\nlo", 6));
+
+ assertEquals(LineSeparator.LF, StringUtil.getLineSeparatorAt("\nHello", 0));
+ assertEquals(LineSeparator.LF, StringUtil.getLineSeparatorAt("\nH\rel\nlo", 5));
+ assertEquals(LineSeparator.LF, StringUtil.getLineSeparatorAt("Hello\n", 5));
+
+ assertEquals(LineSeparator.CR, StringUtil.getLineSeparatorAt("\rH\r\nello", 0));
+ assertEquals(LineSeparator.CR, StringUtil.getLineSeparatorAt("Hello\r", 5));
+ assertEquals(LineSeparator.CR, StringUtil.getLineSeparatorAt("Hello\b\r", 6));
+
+ assertEquals(LineSeparator.CRLF, StringUtil.getLineSeparatorAt("\rH\r\nello", 2));
+ assertEquals(LineSeparator.CRLF, StringUtil.getLineSeparatorAt("\r\nH\r\nello", 0));
+ assertEquals(LineSeparator.CRLF, StringUtil.getLineSeparatorAt("\r\nH\r\nello\r\n", 9));
}
@Test