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());
+ }
+}