Skip to content

Commit 6ba2067

Browse files
committed
test: add test for matrix determinant
Added a test case for single-element matrix.
1 parent a3136f6 commit 6ba2067

File tree

1 file changed

+19
-0
lines changed

1 file changed

+19
-0
lines changed

math/matrix/determinant_test.go

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@ package matrix_test
22

33
import (
44
"errors"
5+
"math"
6+
"math/rand"
57
"testing"
68

79
"github.com/TheAlgorithms/Go/math/matrix"
@@ -24,6 +26,23 @@ func TestMatrixDeterminant(t *testing.T) {
2426
if determinant != -14 {
2527
t.Fatalf("Determinant returned for a 3 by 3 matrix was %d; wanted -14", determinant)
2628
}
29+
30+
// Find Dertminant of a 1 by 1 matrix
31+
expectedValue := rand.Intn(math.MaxInt)
32+
matrix2, err := matrix.NewFromElements([][]int{
33+
{expectedValue},
34+
})
35+
if err != nil {
36+
t.Fatalf("Error creating 1 by 1 matrix: %v", err)
37+
}
38+
determinant, err = matrix2.Determinant()
39+
if err != nil {
40+
t.Fatalf("Error returned from 1 by 1 matrix: %v", err)
41+
}
42+
if determinant != expectedValue {
43+
t.Fatalf("Determinant returned for a 1 by 1 matrix was %d; wanted %d", determinant, expectedValue)
44+
}
45+
2746
}
2847

2948
func TestEmptyMatrix(t *testing.T) {

0 commit comments

Comments
 (0)