diff --git a/src/test/java/edu/ntnu/idi/idatt2003/g40/mappe/ShareTest.java b/src/test/java/edu/ntnu/idi/idatt2003/g40/mappe/ShareTest.java index 2e94fdf..0a5deb1 100644 --- a/src/test/java/edu/ntnu/idi/idatt2003/g40/mappe/ShareTest.java +++ b/src/test/java/edu/ntnu/idi/idatt2003/g40/mappe/ShareTest.java @@ -1,3 +1,48 @@ -public class ShareTest { - -} +package edu.ntnu.idi.idatt2003.g40.mappe; + +import org.junit.jupiter.api.Test; + +import java.math.BigDecimal; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertSame; + +class ShareTest { + + @Test + void constructorStoresAllValuesCorrectly() { + Stock stock = new Stock("AAPL", "Apple Inc.", new BigDecimal("150.00")); + BigDecimal quantity = new BigDecimal("10"); + BigDecimal purchasePrice = new BigDecimal("145.50"); + + Share share = new Share(stock, quantity, purchasePrice); + + assertSame(stock, share.getStock()); + assertEquals(quantity, share.getQuantity()); + assertEquals(purchasePrice, share.getPurchasePrice()); + } + + @Test + void shareSupportsDecimalValues() { + Stock stock = new Stock("TSLA", "Tesla Inc.", new BigDecimal("200.00")); + + Share share = new Share( + stock, + new BigDecimal("2.5"), + new BigDecimal("198.75") + ); + + assertEquals(new BigDecimal("2.5"), share.getQuantity()); + assertEquals(new BigDecimal("198.75"), share.getPurchasePrice()); + } + + @Test + void getStockReturnsCorrectStockObject() { + Stock stock = new Stock("NVDA", "NVIDIA Corporation", new BigDecimal("875.40")); + Share share = new Share(stock, new BigDecimal("4"), new BigDecimal("850.00")); + + assertSame(stock, share.getStock()); + assertEquals("NVDA", share.getStock().getSymbol()); + assertEquals("NVIDIA Corporation", share.getStock().getCompany()); + } +} \ No newline at end of file