From 497f04eac283341290ad290239e11196dc6ef8c0 Mon Sep 17 00:00:00 2001 From: EspenTinius Date: Sat, 14 Mar 2026 07:06:22 +0100 Subject: [PATCH] unit test Player class --- .../ntnu/idi/idatt2003/g40/mappe/Player.java | 1 - .../idi/idatt2003/g40/mappe/PlayerTest.java | 51 +++++++++++++++++-- 2 files changed, 48 insertions(+), 4 deletions(-) diff --git a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/Player.java b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/Player.java index 0114bbf..0d5939d 100644 --- a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/Player.java +++ b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/Player.java @@ -1,7 +1,6 @@ package edu.ntnu.idi.idatt2003.g40.mappe; import java.math.BigDecimal; -import java.util.Objects; public class Player { diff --git a/src/test/java/edu/ntnu/idi/idatt2003/g40/mappe/PlayerTest.java b/src/test/java/edu/ntnu/idi/idatt2003/g40/mappe/PlayerTest.java index e3c1316..f62c0d5 100644 --- a/src/test/java/edu/ntnu/idi/idatt2003/g40/mappe/PlayerTest.java +++ b/src/test/java/edu/ntnu/idi/idatt2003/g40/mappe/PlayerTest.java @@ -1,3 +1,48 @@ -public class PlayerTest { - -} +package edu.ntnu.idi.idatt2003.g40.mappe; + +import org.junit.jupiter.api.Test; + +import java.math.BigDecimal; + +import static org.junit.jupiter.api.Assertions.*; + +class PlayerTest { + + @Test + void constructorSetsNameMoneyPortfolioAndArchive() { + Player player = new Player("Alice", new BigDecimal("1000")); + + assertEquals("Alice", player.getName()); + assertEquals(new BigDecimal("1000"), player.getMoney()); + assertNotNull(player.getPortfolio()); + assertNotNull(player.getTransactionArchive()); + } + + @Test + void addMoneyIncreasesBalance() { + Player player = new Player("Bob", new BigDecimal("500")); + + player.addMoney(new BigDecimal("200")); + + assertEquals(new BigDecimal("700"), player.getMoney()); + } + + @Test + void withdrawMoneyDecreasesBalance() { + Player player = new Player("Charlie", new BigDecimal("500")); + + player.withdrawMoney(new BigDecimal("150")); + + assertEquals(new BigDecimal("350"), player.getMoney()); + } + + @Test + void addAndWithdrawMoneyUpdateBalanceCorrectly() { + Player player = new Player("Dana", new BigDecimal("1000")); + + player.addMoney(new BigDecimal("250")); + player.withdrawMoney(new BigDecimal("300")); + + assertEquals(new BigDecimal("950"), player.getMoney()); + } +} \ No newline at end of file