From 261de551c5b72b324839906b65cf712ca18b1d3f Mon Sep 17 00:00:00 2001 From: NanditaMazz Date: Sat, 31 Oct 2026 00:35:48 +0530 Subject: [PATCH 1/2] test: add Fibonacci matrix exponentiation tests --- .../matrixexponentiation/FibonacciTest.java | 33 +++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 src/test/java/com/thealgorithms/matrix/matrixexponentiation/FibonacciTest.java diff --git a/src/test/java/com/thealgorithms/matrix/matrixexponentiation/FibonacciTest.java b/src/test/java/com/thealgorithms/matrix/matrixexponentiation/FibonacciTest.java new file mode 100644 index 000000000000..ad11595225d8 --- /dev/null +++ b/src/test/java/com/thealgorithms/matrix/matrixexponentiation/FibonacciTest.java @@ -0,0 +1,33 @@ +package com.thealgorithms.matrix.matrixexponentiation; +import static org.junit.jupiter.api.Assertions.assertArrayEquals; +import java.math.BigDecimal; +import org.junit.jupiter.api.Test; +class FibonacciTest { + private static BigDecimal[][] matrix(String a, String b, String c, String d) { + return new BigDecimal[][] {{new BigDecimal(a), new BigDecimal(b)}, {new BigDecimal(c), new BigDecimal(d)}}; + } + @Test + void testFibZeroReturnsIdentityMatrix() { + assertArrayEquals(matrix("1", "0", "0", "1"), Fibonacci.fib(0)); + } + @Test + void testFibOne() { + assertArrayEquals(matrix("1", "1", "1", "0"), Fibonacci.fib(1)); + } + @Test + void testFibEvenInput() { + assertArrayEquals(matrix("2", "1", "1", "1"), Fibonacci.fib(2)); + } + @Test + void testFibOddInput() { + assertArrayEquals(matrix("3", "2", "2", "1"), Fibonacci.fib(3)); + } + @Test + void testFibTen() { + assertArrayEquals(matrix("89", "55", "55", "34"), Fibonacci.fib(10)); + } + @Test + void testFibLargeInput() { + assertArrayEquals(matrix("20365011074", "12586269025", "12586269025", "7778742049"), Fibonacci.fib(50)); + } +} From ce54b8216c6fc6fde13260b96390db310e545745 Mon Sep 17 00:00:00 2001 From: NanditaMazz Date: Mon, 2 Nov 2026 11:58:53 +0530 Subject: [PATCH 2/2] style: fix Fibonacci test formatting --- .../thealgorithms/matrix/matrixexponentiation/FibonacciTest.java | 1 + 1 file changed, 1 insertion(+) diff --git a/src/test/java/com/thealgorithms/matrix/matrixexponentiation/FibonacciTest.java b/src/test/java/com/thealgorithms/matrix/matrixexponentiation/FibonacciTest.java index ad11595225d8..9f70940bde19 100644 --- a/src/test/java/com/thealgorithms/matrix/matrixexponentiation/FibonacciTest.java +++ b/src/test/java/com/thealgorithms/matrix/matrixexponentiation/FibonacciTest.java @@ -1,5 +1,6 @@ package com.thealgorithms.matrix.matrixexponentiation; import static org.junit.jupiter.api.Assertions.assertArrayEquals; + import java.math.BigDecimal; import org.junit.jupiter.api.Test; class FibonacciTest {