From d090837b469b46c967f72df623956dcbf72b6111 Mon Sep 17 00:00:00 2001 From: martin Date: Fri, 6 Mar 2026 14:29:05 +0100 Subject: [PATCH] test: adding StockTest --- src/test/java/millions/StockTest.java | 37 ++++++++++++++++++++++++++- 1 file changed, 36 insertions(+), 1 deletion(-) diff --git a/src/test/java/millions/StockTest.java b/src/test/java/millions/StockTest.java index eda8962..13a95a8 100644 --- a/src/test/java/millions/StockTest.java +++ b/src/test/java/millions/StockTest.java @@ -2,4 +2,39 @@ import static org.junit.jupiter.api.Assertions.*; -class StockTest {} +import java.math.BigDecimal; +import java.util.ArrayList; +import java.util.Arrays; +import org.junit.jupiter.api.Test; + +class StockTest { + @Test + public void testHapyPath() { + Stock stock = new Stock("NVDA", "Nvadia", BigDecimal.valueOf(20)); + Stock stock2 = + new Stock( + "NVDA", "Nvadia", new ArrayList(Arrays.asList(BigDecimal.valueOf(20)))); + stock2.addNewSalesPrice(BigDecimal.valueOf(30)); + assertEquals(BigDecimal.valueOf(30), stock2.getSalesPrice()); + } + + @Test + public void settersAndGetters() { + Stock stock = new Stock("NVDA", "Nvadia", BigDecimal.valueOf(20)); + assertEquals("NVDA", stock.getSymbol()); + assertEquals("Nvadia", stock.getCompany()); + } + + @Test + public void testNullsAndInvalid() { + + assertThrows( + IllegalArgumentException.class, () -> new Stock(null, "Nvadia", BigDecimal.valueOf(20))); + assertThrows( + IllegalArgumentException.class, () -> new Stock("NVDA", null, BigDecimal.valueOf(20))); + assertThrows( + IllegalArgumentException.class, () -> new Stock("NVDA", "", BigDecimal.valueOf(20))); + assertThrows( + IllegalArgumentException.class, () -> new Stock("", "Nvadia", BigDecimal.valueOf(20))); + } +}