From 4effd28d80faa64087c2cbb94f106e5be61b7324 Mon Sep 17 00:00:00 2001 From: ngominhtrint Date: Sun, 9 Jul 2023 12:24:00 -0500 Subject: [PATCH] Add unit tests for Minimum Path Sum algorithm (#4233) * Add unit tests for Minimum Path Sum algorithm * fix lint issues * fix lint issues * fix clang lint issue --- .../MinimumPathSumTest.java | 44 +++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 src/test/java/com/thealgorithms/dynamicprogramming/MinimumPathSumTest.java diff --git a/src/test/java/com/thealgorithms/dynamicprogramming/MinimumPathSumTest.java b/src/test/java/com/thealgorithms/dynamicprogramming/MinimumPathSumTest.java new file mode 100644 index 000000000..25e2d8372 --- /dev/null +++ b/src/test/java/com/thealgorithms/dynamicprogramming/MinimumPathSumTest.java @@ -0,0 +1,44 @@ +package com.thealgorithms.dynamicprogramming; + +import static org.junit.jupiter.api.Assertions.*; + +import org.junit.jupiter.api.Test; + +public class MinimumPathSumTest { + + @Test + public void testMinimumPathSumWithRegularGrid() { + int[][] grid = {{1, 3, 1}, {1, 5, 1}, {4, 2, 1}}; + assertEquals(7, MinimumPathSum.minimumPathSum(grid)); + } + + @Test + public void testMinimumPathSumWithOneRowOneColumnGrid() { + int[][] grid = {{2}}; + assertEquals(2, MinimumPathSum.minimumPathSum(grid)); + } + + @Test + public void testMinimumPathSumWithEmptyGrid() { + int[][] grid = {{}}; + assertEquals(0, MinimumPathSum.minimumPathSum(grid)); + } + + @Test + public void testMinimumPathSumWithOneColumnGrid() { + int[][] grid = {{1}, {2}, {3}}; + assertEquals(6, MinimumPathSum.minimumPathSum(grid)); + } + + @Test + public void testMinimumPathSumGridOneRowGrid() { + int[][] grid = {{1, 2, 3}}; + assertEquals(6, MinimumPathSum.minimumPathSum(grid)); + } + + @Test + public void testMinimumPathSumWithDiffRowAndColumnGrid() { + int[][] grid = {{1, 2, 3, 4}, {5, 6, 7, 8}, {9, 10, 11, 12}}; + assertEquals(30, MinimumPathSum.minimumPathSum(grid)); + } +}