From 3210b24038de92afaf88378ba0f0f793168b3b3a Mon Sep 17 00:00:00 2001 From: Neetika23 <42495275+Neetika23@users.noreply.github.com> Date: Fri, 8 Dec 2023 12:07:28 +0530 Subject: [PATCH] Update Print2DArraysTest.java --- .../print2DArrays/Print2DArraysTest.java | 34 +++++++++++++------ 1 file changed, 24 insertions(+), 10 deletions(-) diff --git a/core-java-modules/core-java-arrays-guides/src/test/java/com/baeldung/print2DArrays/Print2DArraysTest.java b/core-java-modules/core-java-arrays-guides/src/test/java/com/baeldung/print2DArrays/Print2DArraysTest.java index 7fd8211926..37e08c54ab 100644 --- a/core-java-modules/core-java-arrays-guides/src/test/java/com/baeldung/print2DArrays/Print2DArraysTest.java +++ b/core-java-modules/core-java-arrays-guides/src/test/java/com/baeldung/print2DArrays/Print2DArraysTest.java @@ -4,32 +4,46 @@ import org.junit.jupiter.api.Test; import static org.junit.jupiter.api.Assertions.assertEquals; public class ArrayPrinterTest { + + @SystemStub + private SystemOut systemOut; @Test - public void testPrint2DNested() { + void whenPrint2D_thenUseNested() { int[][] myArray = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}}; + for (int i = 0; i < array.length; i++) { + for (int j = 0; j < array[i].length; j++) { + System.out.print(array[i][j] + " "); + } + System.out.println(); + } String expectedOutput = "1 2 3 \n4 5 6 \n7 8 9 \n"; - assertEquals(expectedOutput, ArrayPrinter.print2DNested(myArray)); + assertThat(systemOut.getLines()).containsExactly(expectedOutput); } @Test - public void testPrint2DStream() { + public void whenPrint2D_thenUseStream() { int[][] myArray = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}}; - String expectedOutput = "1 2 3 4 5 6 7 8 9 "; - assertEquals(expectedOutput, ArrayPrinter.print2DStream(myArray)); + Arrays.stream(array) .flatMapToInt(Arrays::stream) .forEach(num -> System.out.print(num + " ")); + String expectedOutput = "1 2 3 4 5 6 7 8 9"; + assertThat(systemOut.getLines()).containsExactly(expectedOutput); } @Test - public void testPrint2DDeepToString() { + public void whenPrint2D_thenUseDeepToString() { int[][] myArray = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}}; - String expectedOutput = "[[1, 2, 3], [4, 5, 6], [7, 8, 9]]\n"; - assertEquals(expectedOutput, ArrayPrinter.print2DDeepToString(myArray)); + System.out.println(Arrays.deepToString(myArray)); + String expectedOutput = "[[1, 2, 3], [4, 5, 6], [7, 8, 9]]"; + assertThat(systemOut.getLines()).containsExactly(expectedOutput); } @Test - public void testPrintArrayString() { + public void whenPrint2D_thenUseDeepToString() { int[][] myArray = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}}; + for (int[] row : myArray) { + System.out.println(Arrays.toString(row)); + } String expectedOutput = "[1, 2, 3]\n[4, 5, 6]\n[7, 8, 9]\n"; - assertEquals(expectedOutput, ArrayPrinter.printArrayString(myArray)); + assertThat(systemOut.getLines()).containsExactly(expectedOutput); } }