From 3c90d5db7ab76542df13613a2bbe20b79881d461 Mon Sep 17 00:00:00 2001 From: Charlie Moore <58339043+charliejmoore@users.noreply.github.com> Date: Mon, 20 Sep 2021 03:25:02 -0400 Subject: [PATCH] chore: merge "Tests check vowels (#691)" * add tests to CheckVowels to cover additional inputs and edge cases * make line spacing consistent with other test files --- String/CheckVowels.test.js | 55 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) diff --git a/String/CheckVowels.test.js b/String/CheckVowels.test.js index fd074e924..fe002a8c1 100644 --- a/String/CheckVowels.test.js +++ b/String/CheckVowels.test.js @@ -4,9 +4,64 @@ describe('Test the checkVowels function', () => { it('expect throws on use wrong param', () => { expect(() => checkVowels(0)).toThrow() }) + it('count the vowels in a string', () => { const value = 'Mad World' const countVowels = checkVowels(value) expect(countVowels).toBe(2) }) + + it('should return 0 when input is a string with no vowels', () => { + const value = 'bcdfgh' + const countVowels = checkVowels(value) + expect(countVowels).toBe(0) + }) + + it('should return 1 when input is a string of length 1 that is a vowel', () => { + const value = 'a' + const countVowels = checkVowels(value) + expect(countVowels).toBe(1) + }) + + it('should return the correct result when input is in all uppercase letters', () => { + const value = 'ABCDE' + const countVowels = checkVowels(value) + expect(countVowels).toBe(2) + }) + + it('should return the correct result when input is in all lowercase letters', () => { + const value = 'abcdefghi' + const countVowels = checkVowels(value) + expect(countVowels).toBe(3) + }) + + it('should return the correct result when input string contains spaces', () => { + const value = 'abc def ghi' + const countVowels = checkVowels(value) + expect(countVowels).toBe(3) + }) + + it('should return the correct result when input contains number characters', () => { + const value = 'a1b2c3' + const countVowels = checkVowels(value) + expect(countVowels).toBe(1) + }) + + it('should return the correct result when input contains punctuation characters', () => { + const value = 'a!b.ce)' + const countVowels = checkVowels(value) + expect(countVowels).toBe(2) + }) + + it('should return 0 when the input is an empty string', () => { + const value = '' + const countVowels = checkVowels(value) + expect(countVowels).toBe(0) + }) + + it('should count multiple occurances of the same vowel in the input', () => { + const value = 'aaaaa' + const countVowels = checkVowels(value) + expect(countVowels).toBe(5) + }) })