function sumOddFibonacciNumbers(num) {
// write code here.
let num1 = 0;
let num2 = 1;
let oddFibonacciSum = 1;
while(true) {
let nextFib = num1 + num2;
num1 = num2;
num2 = nextFib;
if(nextFib > num) {
break;
}
if(nextFib % 2 === 1) {
oddFibonacciSum += nextFib;
}
}
return oddFibonacciSum;
}
/**
* Test Suite
*/
describe('sumOddFibonacciNumbers()', () => {
it('returns sum of all odd Fibonnci numbers', () => {
// arrange
const num = 10;
// act
const result = sumOddFibonacciNumbers(num);
// log
console.log("result 1: ", result);
// assert
expect(result).toBe(10);
});
it('returns sum of all odd Fibonnci numbers 2nd example', () => {
// arrange
const num = 1000;
// act
const result = sumOddFibonacciNumbers(num);
// log
console.log("result 2: ", result);
// assert
expect(result).toBe(1785);
});
});