diff --git a/src/algorithms/math/tribonacci/__test__/tribonacci.test.js b/src/algorithms/math/tribonacci/__test__/tribonacci.test.js new file mode 100644 index 00000000..24bd87f0 --- /dev/null +++ b/src/algorithms/math/tribonacci/__test__/tribonacci.test.js @@ -0,0 +1,16 @@ +import tribonacci from '../tribonacci'; + +describe('tribonacci', () => { + it('should calculate tribonacci correctly', () => { + expect(tribonacci(1)).toEqual([0]); + expect(tribonacci(2)).toEqual([0, 0]); + expect(tribonacci(3)).toEqual([0, 0, 1]); + expect(tribonacci(4)).toEqual([0, 0, 1, 1]); + expect(tribonacci(5)).toEqual([0, 0, 1, 1, 2]); + expect(tribonacci(6)).toEqual([0, 0, 1, 1, 2, 4]); + expect(tribonacci(7)).toEqual([0, 0, 1, 1, 2, 4, 7]); + expect(tribonacci(8)).toEqual([0, 0, 1, 1, 2, 4, 7, 13]); + expect(tribonacci(9)).toEqual([0, 0, 1, 1, 2, 4, 7, 13, 24]); + expect(tribonacci(10)).toEqual([0, 0, 1, 1, 2, 4, 7, 13, 24, 44]); + }); +}); diff --git a/src/algorithms/math/tribonacci/__test__/tribonacciNth.test.js b/src/algorithms/math/tribonacci/__test__/tribonacciNth.test.js new file mode 100644 index 00000000..3f7cec7a --- /dev/null +++ b/src/algorithms/math/tribonacci/__test__/tribonacciNth.test.js @@ -0,0 +1,17 @@ +import tribonacciNth from '../tribonacciNth'; + +describe('tribonacciNth', () => { + it('should calculate tribonacci correctly', () => { + expect(tribonacciNth(1)).toBe(0); + expect(tribonacciNth(2)).toBe(1); + expect(tribonacciNth(3)).toBe(1); + expect(tribonacciNth(4)).toBe(2); + expect(tribonacciNth(5)).toBe(4); + expect(tribonacciNth(6)).toBe(7); + expect(tribonacciNth(7)).toBe(13); + expect(tribonacciNth(8)).toBe(24); + expect(tribonacciNth(20)).toBe(35890); + expect(tribonacciNth(30)).toBe(15902591); + expect(tribonacciNth(50)).toBe(3122171529233); + }); +});