From 69b6bdca5674342f1970fad8c6e00c5ad24130d3 Mon Sep 17 00:00:00 2001 From: unknown <174657090+Butenkite@users.noreply.github.com> Date: Mon, 20 Jan 2025 22:09:34 -0800 Subject: [PATCH] Updated tests --- src/CharacterFrequencyCounter.java | 6 ++++-- src/CharacterFrequencyCounterTest.java | 20 +++++++++++++++++++- 2 files changed, 23 insertions(+), 3 deletions(-) diff --git a/src/CharacterFrequencyCounter.java b/src/CharacterFrequencyCounter.java index d4e09c1..a1b3060 100644 --- a/src/CharacterFrequencyCounter.java +++ b/src/CharacterFrequencyCounter.java @@ -60,8 +60,10 @@ public int getFrequency(char c) { */ public double getRelativePercentage(char c) { c = Character.toLowerCase(c); - int charCount = frequencyMap.get(c); - + int charCount = 0; + if(frequencyMap.get(c) != null){ + charCount = frequencyMap.get(c); + } return ((double) charCount / totalCharacterCount) * 100; } } diff --git a/src/CharacterFrequencyCounterTest.java b/src/CharacterFrequencyCounterTest.java index bed3ee2..eaf0517 100644 --- a/src/CharacterFrequencyCounterTest.java +++ b/src/CharacterFrequencyCounterTest.java @@ -3,5 +3,23 @@ import org.junit.jupiter.api.Test; public class CharacterFrequencyCounterTest { - + @Test + public void testLAppears3TimesInHelloWorld(){ + // arrange + CharacterFrequencyCounter counter = new CharacterFrequencyCounter("hello world"); + // act + int actual = counter.getFrequency('l'); + // assert + assertEquals(3, actual); + } + + @Test + public void testNonOccurringCharacterPercentageIsZero(){ + // arrange + CharacterFrequencyCounter counter = new CharacterFrequencyCounter("hi there"); + // act + double actualPercent = counter.getRelativePercentage('z'); + // assert + assertEquals(0.0, actualPercent, 0.0001); + } } \ No newline at end of file