test/java/nio/file/Files/StreamLinesTest.java

Print this page
rev 12681 : 8135091: (fs) java/nio/file/Files/StreamLinesTest.java should test empty files
Summary: In lines() add zero length case and rearrange first loop to avoid duplicate cases.
Reviewed-by: XXX

*** 136,158 **** List<Charset> charsets = Arrays.asList(StandardCharsets.UTF_8, StandardCharsets.US_ASCII, StandardCharsets.ISO_8859_1, StandardCharsets.UTF_16); String[] lines = {"", "A", "AB", "ABC", "ABCD"}; ! int[] linesSizes = {1, 2, 3, 4, 16, 256, 1024}; for (Charset charset : charsets) { - for (String line : lines) { for (int linesSize : linesSizes) { for (LineSeparator ls : EnumSet.complementOf(EnumSet.of(LineSeparator.NONE))) { String description = String.format("%d lines of \"%s\" with separator %s", linesSize, line, ls); l.add(of(description, i -> line, i -> ls, linesSize, charset)); } } } } for (Charset charset : charsets) { l.add(of("A maximum of 1024 random lines and separators", --- 136,165 ---- List<Charset> charsets = Arrays.asList(StandardCharsets.UTF_8, StandardCharsets.US_ASCII, StandardCharsets.ISO_8859_1, StandardCharsets.UTF_16); String[] lines = {"", "A", "AB", "ABC", "ABCD"}; ! int[] linesSizes = {0, 1, 2, 3, 4, 16, 256, 1024}; for (Charset charset : charsets) { for (int linesSize : linesSizes) { + if (linesSize > 0) { + for (String line : lines) { for (LineSeparator ls : EnumSet.complementOf(EnumSet.of(LineSeparator.NONE))) { String description = String.format("%d lines of \"%s\" with separator %s", linesSize, line, ls); l.add(of(description, i -> line, i -> ls, linesSize, charset)); } } + } else { + l.add(of("Empty file: 0 lines", + i -> "", + i -> LineSeparator.NONE, + 0, charset)); + } } } for (Charset charset : charsets) { l.add(of("A maximum of 1024 random lines and separators",