function countVowelConsonant(str) {
const vowels = ['a','e','i','o','u']
return str.split('').reduce((acc, value) =>
acc += vowels.some(vowel => value.includes(vowel)) ? 1 : 2,0)
}
/**
* Test Suite
*/
describe('countVowelConsonant()', () => {
it('returns total of vowels(1) and consonants(2) to be added', () => {
// arrange
const value = 'abcde';
// act
const result = countVowelConsonant(value);
// log
console.log("result: ", result);
// assert
expect(result).toBe(8);
});
it('returns total of vowels(1) and consonants(2) to be added', () => {
// arrange
const value = 'aaeeiioouu';
// act
const result = countVowelConsonant(value);
// log
console.log("result: ", result);
// assert
expect(result).toBe(10);
});
it('returns total of vowels(1) and consonants(2) to be added', () => {
// arrange
const value = 'bcdfghjklmnp';
// act
const result = countVowelConsonant(value);
// log
console.log("result: ", result);
// assert
expect(result).toBe(24);
});
});