diff --git a/pom.xml b/pom.xml index e854ccf..641ab2a 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ com.mattrixwv matrix - 1.0.1 + 1.0.2 Matrix https://www.mattrixwv.com @@ -14,12 +14,13 @@ UTF-8 - 18 - 18 - 18 + UTF-8 + 19 + 19 + 19 - 18 + 19 target/dependency-check-report.json target/dependency-check-report.html @@ -28,7 +29,7 @@ org.junit.jupiter junit-jupiter-api - 5.9.0 + 5.9.2 test @@ -39,7 +40,7 @@ org.apache.maven.plugins maven-enforcer-plugin - 3.1.0 + 3.3.0 enforce-maven @@ -64,11 +65,11 @@ maven-resources-plugin - 3.2.0 + 3.3.1 maven-compiler-plugin - 3.10.1 + 3.11.0 ${java.version} @@ -80,38 +81,43 @@ maven-surefire-plugin - 3.0.0-M5 + 3.0.0 maven-jar-plugin - 3.2.2 + 3.3.0 maven-install-plugin - 3.0.0-M1 + 3.1.1 maven-deploy-plugin - 3.0.0-M1 + 3.1.1 maven-site-plugin - 3.12.0 + 3.12.1 maven-project-info-reports-plugin - 3.3.0 + 3.4.2 org.codehaus.mojo versions-maven-plugin - 2.11.0 + 2.15.0 file://${session.executionRootDirectory}/version-rules.xml + + org.apache.maven.plugins + maven-dependency-plugin + 3.5.0 + org.sonarsource.scanner.maven @@ -121,7 +127,7 @@ org.jacoco jacoco-maven-plugin - 0.8.8 + 0.8.9 jacoco-initialize @@ -142,7 +148,7 @@ org.owasp dependency-check-maven - 7.1.1 + 8.2.1 none diff --git a/src/test/java/com/mattrixwv/matrix/TestBigIntegerMatrix.java b/src/test/java/com/mattrixwv/matrix/TestBigIntegerMatrix.java index fc74de4..e6e4995 100644 --- a/src/test/java/com/mattrixwv/matrix/TestBigIntegerMatrix.java +++ b/src/test/java/com/mattrixwv/matrix/TestBigIntegerMatrix.java @@ -1,7 +1,7 @@ //Matrix/src/test/java/com/mattrixwv/matrix/TestBigBigIntegerMatrix.java //Mattrixwv // Created: 02-10-22 -//Modified: 07-09-22 +//Modified: 04-13-23 package com.mattrixwv.matrix; @@ -200,8 +200,8 @@ public class TestBigIntegerMatrix{ public void testEquals(){ //Invalid equals BigIntegerMatrix matrix = new BigIntegerMatrix(grid1); - assertNotEquals(null, matrix); - assertNotEquals(new int[0], matrix); + assertNotEquals(matrix, null); + assertNotEquals(matrix, new int[0]); //1x1 boolean gridEquals = matrix.equals(matrix); @@ -1858,4 +1858,38 @@ public class TestBigIntegerMatrix{ String matrixString = "[1,2,3]\n[1,2,3]\n[1,2,3]"; assertEquals(matrixString, matrix.toString()); } + + @Test + public void testLaplaceExpansionHelper(){ + BigIntegerMatrixPublic matrix = new BigIntegerMatrixPublic(); + matrix.addRow(grid2[0]); + assertThrows(InvalidGeometryException.class, () -> { + matrix.laplaceExpansionHelper(0, 0); + }); + + BigIntegerMatrixPublic matrix2 = new BigIntegerMatrixPublic(); + matrix2.setGrid(grid1); + assertThrows(InvalidGeometryException.class, () -> { + matrix2.laplaceExpansionHelper(0, 0); + }); + + BigIntegerMatrixPublic matrix3 = new BigIntegerMatrixPublic(); + matrix3.setGrid(grid2); + assertThrows(InvalidCoordinatesException.class, () -> { + matrix3.laplaceExpansionHelper(-1, 0); + }); + assertThrows(InvalidCoordinatesException.class, () -> { + matrix3.laplaceExpansionHelper(2, 0); + }); + assertThrows(InvalidCoordinatesException.class, () -> { + matrix3.laplaceExpansionHelper(0, -1); + }); + assertThrows(InvalidCoordinatesException.class, () -> { + matrix3.laplaceExpansionHelper(0, 2); + }); + } + + + private class BigIntegerMatrixPublic extends BigIntegerMatrix{ + } } diff --git a/src/test/java/com/mattrixwv/matrix/TestDoubleMatrix.java b/src/test/java/com/mattrixwv/matrix/TestDoubleMatrix.java index fc6cc9a..dba7f9d 100644 --- a/src/test/java/com/mattrixwv/matrix/TestDoubleMatrix.java +++ b/src/test/java/com/mattrixwv/matrix/TestDoubleMatrix.java @@ -1,11 +1,10 @@ //Matrix/src/test/java/com/mattrixwv/matrix/TestDoubleMatrix.java //Mattrixwv // Created: 02-07-22 -//Modified: 07-09-22 +//Modified: 04-13-23 package com.mattrixwv.matrix; - import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertFalse; import static org.junit.jupiter.api.Assertions.assertNotEquals; @@ -200,8 +199,8 @@ public class TestDoubleMatrix{ public void testEquals(){ //Invalid equals DoubleMatrix matrix = new DoubleMatrix(grid1); - assertNotEquals(null, matrix); - assertNotEquals(new int[0], matrix); + assertNotEquals(matrix, null); + assertNotEquals(matrix, new int[0]); //1x1 matrix = new DoubleMatrix(grid1); @@ -1851,4 +1850,38 @@ public class TestDoubleMatrix{ String matrixString = "[0.5,1.5,2.5]\n[0.5,1.5,2.5]\n[0.5,1.5,2.5]"; assertEquals(matrixString, matrix.toString()); } + + @Test + public void testLaplaceExpansionHelper(){ + DoubleMatrixPublic matrix = new DoubleMatrixPublic(); + matrix.addRow(grid2[0]); + assertThrows(InvalidGeometryException.class, () -> { + matrix.laplaceExpansionHelper(0, 0); + }); + + DoubleMatrixPublic matrix2 = new DoubleMatrixPublic(); + matrix2.setGrid(grid1); + assertThrows(InvalidGeometryException.class, () -> { + matrix2.laplaceExpansionHelper(0, 0); + }); + + DoubleMatrixPublic matrix3 = new DoubleMatrixPublic(); + matrix3.setGrid(grid2); + assertThrows(InvalidCoordinatesException.class, () -> { + matrix3.laplaceExpansionHelper(-1, 0); + }); + assertThrows(InvalidCoordinatesException.class, () -> { + matrix3.laplaceExpansionHelper(2, 0); + }); + assertThrows(InvalidCoordinatesException.class, () -> { + matrix3.laplaceExpansionHelper(0, -1); + }); + assertThrows(InvalidCoordinatesException.class, () -> { + matrix3.laplaceExpansionHelper(0, 2); + }); + } + + + private class DoubleMatrixPublic extends DoubleMatrix{ + } } diff --git a/src/test/java/com/mattrixwv/matrix/TestIntegerMatrix.java b/src/test/java/com/mattrixwv/matrix/TestIntegerMatrix.java index eae382d..deb67df 100644 --- a/src/test/java/com/mattrixwv/matrix/TestIntegerMatrix.java +++ b/src/test/java/com/mattrixwv/matrix/TestIntegerMatrix.java @@ -1,7 +1,7 @@ //Matrix/src/test/java/com/mattrixwv/matrix/TestIntegerMatrix.java //Mattrixwv // Created: 02-01-22 -//Modified: 07-09-22 +//Modified: 04-13-23 package com.mattrixwv.matrix; @@ -199,8 +199,8 @@ public class TestIntegerMatrix{ public void testEquals(){ //Invalid equals IntegerMatrix matrix = new IntegerMatrix(grid1); - assertNotEquals(null, matrix); - assertNotEquals(new double[0], matrix); + assertNotEquals(matrix, null); + assertNotEquals(matrix, new double[0]); //1x1 matrix = new IntegerMatrix(grid1); @@ -1849,4 +1849,38 @@ public class TestIntegerMatrix{ String matrixString = "[1,2,3]\n[1,2,3]\n[1,2,3]"; assertEquals(matrixString, matrix.toString()); } + + @Test + public void testLaplaceExpansionHelper(){ + IntegerMatrixPublic matrix = new IntegerMatrixPublic(); + matrix.addRow(grid2[0]); + assertThrows(InvalidGeometryException.class, () -> { + matrix.laplaceExpansionHelper(0, 0); + }); + + IntegerMatrixPublic matrix2 = new IntegerMatrixPublic(); + matrix2.setGrid(grid1); + assertThrows(InvalidGeometryException.class, () -> { + matrix2.laplaceExpansionHelper(0, 0); + }); + + IntegerMatrixPublic matrix3 = new IntegerMatrixPublic(); + matrix3.setGrid(grid2); + assertThrows(InvalidCoordinatesException.class, () -> { + matrix3.laplaceExpansionHelper(-1, 0); + }); + assertThrows(InvalidCoordinatesException.class, () -> { + matrix3.laplaceExpansionHelper(2, 0); + }); + assertThrows(InvalidCoordinatesException.class, () -> { + matrix3.laplaceExpansionHelper(0, -1); + }); + assertThrows(InvalidCoordinatesException.class, () -> { + matrix3.laplaceExpansionHelper(0, 2); + }); + } + + + private class IntegerMatrixPublic extends IntegerMatrix{ + } } diff --git a/src/test/java/com/mattrixwv/matrix/TestLongMatrix.java b/src/test/java/com/mattrixwv/matrix/TestLongMatrix.java index 325c142..d30c76f 100644 --- a/src/test/java/com/mattrixwv/matrix/TestLongMatrix.java +++ b/src/test/java/com/mattrixwv/matrix/TestLongMatrix.java @@ -1,7 +1,7 @@ //Matrix/src/test/java/com/mattrixwv/matrix/TestLongMatrix.java //Mattrixwv // Created: 02-10-22 -//Modified: 07-09-22 +//Modified: 04-13-23 package com.mattrixwv.matrix; @@ -198,8 +198,8 @@ public class TestLongMatrix{ public void testEquals(){ //Invalid equals LongMatrix matrix = new LongMatrix(grid1); - assertNotEquals(null, matrix); - assertNotEquals(new int[0], matrix); + assertNotEquals(matrix, null); + assertNotEquals(matrix, new int[0]); //1x1 matrix = new LongMatrix(grid1); @@ -1849,4 +1849,38 @@ public class TestLongMatrix{ String matrixString = "[1,2,3]\n[1,2,3]\n[1,2,3]"; assertEquals(matrixString, matrix.toString()); } + + @Test + public void testLaplaceExpansionHelper(){ + LongMatrixPublic matrix = new LongMatrixPublic(); + matrix.addRow(grid2[0]); + assertThrows(InvalidGeometryException.class, () -> { + matrix.laplaceExpansionHelper(0, 0); + }); + + LongMatrixPublic matrix2 = new LongMatrixPublic(); + matrix2.setGrid(grid1); + assertThrows(InvalidGeometryException.class, () -> { + matrix2.laplaceExpansionHelper(0, 0); + }); + + LongMatrixPublic matrix3 = new LongMatrixPublic(); + matrix3.setGrid(grid2); + assertThrows(InvalidCoordinatesException.class, () -> { + matrix3.laplaceExpansionHelper(-1, 0); + }); + assertThrows(InvalidCoordinatesException.class, () -> { + matrix3.laplaceExpansionHelper(2, 0); + }); + assertThrows(InvalidCoordinatesException.class, () -> { + matrix3.laplaceExpansionHelper(0, -1); + }); + assertThrows(InvalidCoordinatesException.class, () -> { + matrix3.laplaceExpansionHelper(0, 2); + }); + } + + + private class LongMatrixPublic extends LongMatrix{ + } } diff --git a/src/test/java/com/mattrixwv/matrix/TestModMatrix.java b/src/test/java/com/mattrixwv/matrix/TestModMatrix.java index aff7e8a..54f2d69 100644 --- a/src/test/java/com/mattrixwv/matrix/TestModMatrix.java +++ b/src/test/java/com/mattrixwv/matrix/TestModMatrix.java @@ -1,7 +1,7 @@ //Matrix/src/test/java/com/mattixwv/matrix/TestModMatrix.java //Mattrixwv // Created: 02-09-22 -//Modified: 07-09-22 +//Modified: 04-13-23 package com.mattrixwv.matrix; @@ -137,8 +137,8 @@ public class TestModMatrix{ public void testEquals(){ //Invalid equals ModMatrix matrix = new ModMatrix(grid1, 26); - assertNotEquals(null, matrix); - assertNotEquals(new double[0], matrix); + assertNotEquals(matrix, null); + assertNotEquals(matrix, new double[0]); //1x1 matrix = new ModMatrix(grid1, 26); @@ -1837,4 +1837,41 @@ public class TestModMatrix{ String matrixString = "[1,2,3]\n[1,2,3]\n[1,2,3]\nmod(26)"; assertEquals(matrixString, matrix.toString()); } + + @Test + public void testLaplaceExpansionHelper(){ + ModMatrixPublic matrix = new ModMatrixPublic(); + matrix.addRow(grid2[0]); + assertThrows(InvalidGeometryException.class, () -> { + matrix.laplaceExpansionHelper(0, 0); + }); + + ModMatrixPublic matrix2 = new ModMatrixPublic(); + matrix2.setGrid(grid1); + assertThrows(InvalidGeometryException.class, () -> { + matrix2.laplaceExpansionHelper(0, 0); + }); + + ModMatrixPublic matrix3 = new ModMatrixPublic(); + matrix3.setGrid(grid2); + assertThrows(InvalidCoordinatesException.class, () -> { + matrix3.laplaceExpansionHelper(-1, 0); + }); + assertThrows(InvalidCoordinatesException.class, () -> { + matrix3.laplaceExpansionHelper(2, 0); + }); + assertThrows(InvalidCoordinatesException.class, () -> { + matrix3.laplaceExpansionHelper(0, -1); + }); + assertThrows(InvalidCoordinatesException.class, () -> { + matrix3.laplaceExpansionHelper(0, 2); + }); + } + + + private class ModMatrixPublic extends ModMatrix{ + public ModMatrixPublic(){ + super(Integer.MAX_VALUE); + } + } } diff --git a/src/test/java/com/mattrixwv/matrix/exceptions/TestInvalidCoordinatesException.java b/src/test/java/com/mattrixwv/matrix/exceptions/TestInvalidCoordinatesException.java new file mode 100644 index 0000000..81f042d --- /dev/null +++ b/src/test/java/com/mattrixwv/matrix/exceptions/TestInvalidCoordinatesException.java @@ -0,0 +1,37 @@ +//Matrix/src/test/java/com/mattrixwv/matrix/exceptions/TestInvalidCoordinatesException.java +//Mattrixwv +// Created: 04-13-23 +//Modified: 04-13-23 +package com.mattrixwv.matrix.exceptions; + + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertNull; + +import org.junit.jupiter.api.Test; + + +public class TestInvalidCoordinatesException{ + private String message = "message"; + private Throwable cause = new Exception(); + + + @Test + public void testConstructor(){ + InvalidCoordinatesException exception = new InvalidCoordinatesException(); + assertNull(exception.getMessage()); + assertNull(exception.getCause()); + + exception = new InvalidCoordinatesException(message); + assertEquals(message, exception.getMessage()); + assertNull(exception.getCause()); + + exception = new InvalidCoordinatesException(cause); + assertEquals(cause.toString(), exception.getMessage()); + assertEquals(cause, exception.getCause()); + + exception = new InvalidCoordinatesException(message, cause); + assertEquals(message, exception.getMessage()); + assertEquals(cause, exception.getCause()); + } +} diff --git a/src/test/java/com/mattrixwv/matrix/exceptions/TestInvalidGeometryException.java b/src/test/java/com/mattrixwv/matrix/exceptions/TestInvalidGeometryException.java new file mode 100644 index 0000000..7662194 --- /dev/null +++ b/src/test/java/com/mattrixwv/matrix/exceptions/TestInvalidGeometryException.java @@ -0,0 +1,37 @@ +//Matrix/src/test/java/com/mattrixwv/matrix/exceptions/TestInvalidGeometryException.java +//Mattrixwv +// Created: 04-13-23 +//Modified: 04-13-23 +package com.mattrixwv.matrix.exceptions; + + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertNull; + +import org.junit.jupiter.api.Test; + + +public class TestInvalidGeometryException{ + private String message = "message"; + private Throwable cause = new Exception(); + + + @Test + public void testConstructor(){ + InvalidGeometryException exception = new InvalidGeometryException(); + assertNull(exception.getMessage()); + assertNull(exception.getCause()); + + exception = new InvalidGeometryException(message); + assertEquals(message, exception.getMessage()); + assertNull(exception.getCause()); + + exception = new InvalidGeometryException(cause); + assertEquals(cause.toString(), exception.getMessage()); + assertEquals(cause, exception.getCause()); + + exception = new InvalidGeometryException(message, cause); + assertEquals(message, exception.getMessage()); + assertEquals(cause, exception.getCause()); + } +} diff --git a/src/test/java/com/mattrixwv/matrix/exceptions/TestInvalidRowSizeException.java b/src/test/java/com/mattrixwv/matrix/exceptions/TestInvalidRowSizeException.java new file mode 100644 index 0000000..fcf5349 --- /dev/null +++ b/src/test/java/com/mattrixwv/matrix/exceptions/TestInvalidRowSizeException.java @@ -0,0 +1,37 @@ +//Matrix/src/test/java/com/mattrixwv/matrix/exceptions/TestInvalidRowSizeException.java +//Mattrixwv +// Created: 04-13-23 +//Modified: 04-13-23 +package com.mattrixwv.matrix.exceptions; + + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertNull; + +import org.junit.jupiter.api.Test; + + +public class TestInvalidRowSizeException{ + private String message = "message"; + private Throwable cause = new Exception(); + + + @Test + public void testConstructor(){ + InvalidRowSizeException exception = new InvalidRowSizeException(); + assertNull(exception.getMessage()); + assertNull(exception.getCause()); + + exception = new InvalidRowSizeException(message); + assertEquals(message, exception.getMessage()); + assertNull(exception.getCause()); + + exception = new InvalidRowSizeException(cause); + assertEquals(cause.toString(), exception.getMessage()); + assertEquals(cause, exception.getCause()); + + exception = new InvalidRowSizeException(message, cause); + assertEquals(message, exception.getMessage()); + assertEquals(cause, exception.getCause()); + } +} diff --git a/src/test/java/com/mattrixwv/matrix/exceptions/TestInvalidScalarException.java b/src/test/java/com/mattrixwv/matrix/exceptions/TestInvalidScalarException.java new file mode 100644 index 0000000..ccb44d7 --- /dev/null +++ b/src/test/java/com/mattrixwv/matrix/exceptions/TestInvalidScalarException.java @@ -0,0 +1,37 @@ +//Matrix/src/test/java/com/mattrixwv/matrix/exceptions/TestInvalidScalarException.java +//Mattrixwv +// Created: 04-13-23 +//Modified: 04-13-23 +package com.mattrixwv.matrix.exceptions; + + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertNull; + +import org.junit.jupiter.api.Test; + + +public class TestInvalidScalarException{ + private String message = "message"; + private Throwable cause = new Exception(); + + + @Test + public void testConstructor(){ + InvalidScalarException exception = new InvalidScalarException(); + assertNull(exception.getMessage()); + assertNull(exception.getCause()); + + exception = new InvalidScalarException(message); + assertEquals(message, exception.getMessage()); + assertNull(exception.getCause()); + + exception = new InvalidScalarException(cause); + assertEquals(cause.toString(), exception.getMessage()); + assertEquals(cause, exception.getCause()); + + exception = new InvalidScalarException(message, cause); + assertEquals(message, exception.getMessage()); + assertEquals(cause, exception.getCause()); + } +} diff --git a/src/test/java/com/mattrixwv/matrix/exceptions/TestNullMatrixException.java b/src/test/java/com/mattrixwv/matrix/exceptions/TestNullMatrixException.java new file mode 100644 index 0000000..ff5a682 --- /dev/null +++ b/src/test/java/com/mattrixwv/matrix/exceptions/TestNullMatrixException.java @@ -0,0 +1,37 @@ +//Matrix/src/test/java/com/mattrixwv/matrix/exceptions/TestNullMatrixException.java +//Mattrixwv +// Created: 04-13-23 +//Modified: 04-13-23 +package com.mattrixwv.matrix.exceptions; + + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertNull; + +import org.junit.jupiter.api.Test; + + +public class TestNullMatrixException{ + private String message = "message"; + private Throwable cause = new Exception(); + + + @Test + public void testConstructor(){ + NullMatrixException exception = new NullMatrixException(); + assertNull(exception.getMessage()); + assertNull(exception.getCause()); + + exception = new NullMatrixException(message); + assertEquals(message, exception.getMessage()); + assertNull(exception.getCause()); + + exception = new NullMatrixException(cause); + assertEquals(cause.toString(), exception.getMessage()); + assertEquals(cause, exception.getCause()); + + exception = new NullMatrixException(message, cause); + assertEquals(message, exception.getMessage()); + assertEquals(cause, exception.getCause()); + } +}