From 027c0d63078363ebfaaab07329b36059b3a96540 Mon Sep 17 00:00:00 2001 From: YATIN KATHURIA <47096348+Yatin-kathuria@users.noreply.github.com> Date: Sun, 28 Nov 2021 11:49:11 +0530 Subject: [PATCH] merge: Add test cases (#854) --- Recursive/FibonacciNumberRecursive.js | 22 ++++++++++--------- .../test/FibonacciNumberRecursive.test.js | 19 ++++++++++++++++ 2 files changed, 31 insertions(+), 10 deletions(-) create mode 100644 Recursive/test/FibonacciNumberRecursive.test.js diff --git a/Recursive/FibonacciNumberRecursive.js b/Recursive/FibonacciNumberRecursive.js index f8d463749..4b32e9cb4 100644 --- a/Recursive/FibonacciNumberRecursive.js +++ b/Recursive/FibonacciNumberRecursive.js @@ -1,15 +1,17 @@ -// https://en.wikipedia.org/wiki/Fibonacci_number - /** - * Return the N-th Fibonacci number - * - * @param {number} N - * @returns {number} + * @function Fibonacci + * @description Function to return the N-th Fibonacci number. + * @param {Integer} n - The input integer + * @return {Integer} - Return the N-th Fibonacci number + * @see [Fibonacci](https://en.wikipedia.org/wiki/Fibonacci_number) */ -export const fibonacci = (N) => { - if (N === 0 || N === 1) { - return N + +const fibonacci = (n) => { + if (n < 2) { + return n } - return fibonacci(N - 2) + fibonacci(N - 1) + return fibonacci(n - 2) + fibonacci(n - 1) } + +export { fibonacci } diff --git a/Recursive/test/FibonacciNumberRecursive.test.js b/Recursive/test/FibonacciNumberRecursive.test.js new file mode 100644 index 000000000..fbb67ac84 --- /dev/null +++ b/Recursive/test/FibonacciNumberRecursive.test.js @@ -0,0 +1,19 @@ +import { fibonacci } from '../FibonacciNumberRecursive' + +describe('FibonacciNumberRecursive', () => { + it('should return 0', () => { + expect(fibonacci(0)).toBe(0) + }) + + it('should return 1', () => { + expect(fibonacci(1)).toBe(1) + }) + + it('should return 5', () => { + expect(fibonacci(5)).toBe(5) + }) + + it('should return 9', () => { + expect(fibonacci(9)).toBe(34) + }) +})