const adjacentElementsProduct=(nums,i)=>nums
.map((item,i2)=>item * nums[i2+1])//[18, -12, 10, -35, 21, null]
.filter(item=>item)
.reduce((acc,cur)=>acc>cur? acc:cur,1)
//alternative to reduce using sort and returning the first element //
// const adjacentElementsProduct=(nums,i)=>nums
// .map((item,i)=>item * nums[i-1])
// .filter(item=>item).sort((a,b)=>b-a)[0]
/**
* Test Suite
*/
describe('adjacentElementsProduct()', () => {
it('returns largest product of adjacent values', () => {
// arrange
const nums = [3, 6, -2, -5, 7, 3];
// act
const result = adjacentElementsProduct(nums);
// log
console.log("result: ", result);
// assert
expect(result).toBe(21);
});
});