From 14f2e81b19bbe57dff6faa663cac36ff277549fb Mon Sep 17 00:00:00 2001 From: Stian Rusvik Date: Wed, 14 Aug 2024 11:37:55 +0200 Subject: [PATCH] Stian Rusvik --- src/main/java/com/booleanuk/core/Basket.java | 24 +++++++++++++++++ .../java/com/booleanuk/core/BasketTest.java | 27 +++++++++++++++++++ 2 files changed, 51 insertions(+) create mode 100644 src/main/java/com/booleanuk/core/Basket.java create mode 100644 src/test/java/com/booleanuk/core/BasketTest.java diff --git a/src/main/java/com/booleanuk/core/Basket.java b/src/main/java/com/booleanuk/core/Basket.java new file mode 100644 index 0000000..674f4f4 --- /dev/null +++ b/src/main/java/com/booleanuk/core/Basket.java @@ -0,0 +1,24 @@ +package com.booleanuk.core; +import java.util.HashMap; +import java.util.Map; + +public class Basket { + public HashMap basketList; + public int totalCost; + + public Basket() { + this.basketList = new HashMap<>(); + this.totalCost = 0; + } + + public void addProduct(String product, int price) { + basketList.put(product, price); + } + + public int calculateTotalCostInBasket() { + for (Map.Entry entry : this.basketList.entrySet()) { + this.totalCost += entry.getValue(); + } + return this.totalCost; + } +} diff --git a/src/test/java/com/booleanuk/core/BasketTest.java b/src/test/java/com/booleanuk/core/BasketTest.java new file mode 100644 index 0000000..9fccec0 --- /dev/null +++ b/src/test/java/com/booleanuk/core/BasketTest.java @@ -0,0 +1,27 @@ +package com.booleanuk.core; + +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.Test; + +public class BasketTest { + + @Test + public void testThatAddProductAdsProductToBasketList() { + Basket basket = new Basket(); + + int beforeAddedItem = basket.basketList.size(); + basket.addProduct("Product 1", 10); + int afterAddedItem = basket.basketList.size(); + + Assertions.assertTrue(beforeAddedItem < afterAddedItem); + } + + @Test + public void testCalculatingTotalCostInBasket() { + Basket basket = new Basket(); + basket.addProduct("Product 1", 10); + + int totalCost = basket.calculateTotalCostInBasket(); + Assertions.assertEquals(10, totalCost); + } +}