diff --git a/src/test/java/millions/controller/fileIO/CSV/CSVStockFileParserTest.java b/src/test/java/millions/controller/fileIO/CSV/CSVStockFileParserTest.java index efefb7d..3c85a6c 100644 --- a/src/test/java/millions/controller/fileIO/CSV/CSVStockFileParserTest.java +++ b/src/test/java/millions/controller/fileIO/CSV/CSVStockFileParserTest.java @@ -22,9 +22,9 @@ public void setUpTestString() { exampleString = "# Top 500 US Stocks by Market Cap\n"; exampleString += "# Ticker,Name,Price\n"; exampleString += "\n"; - exampleString += "NVDA,Nvidia,191.27\n"; - exampleString += "AAPL,Apple Inc.,276.43\n"; - exampleString += "MSFT,Microsoft,404.68\n"; + exampleString += "NVDA,Nvidia,191.27,1;1;1;1;1;1\n"; + exampleString += "AAPL,Apple Inc.,276.43,1;1;1;1;1;1\n"; + exampleString += "MSFT,Microsoft,404.68,1;1;1;1;1;1\n"; } @@ -45,29 +45,29 @@ public void InvalidFormatExceptionTest() { @Test public void NumberConversionExceptionTest() { - exampleString += "Company, Company Inc., NotANumber"; + exampleString += "Company, Company Inc., NotANumber,1;1;1;1;1;1"; List testList = List.of(exampleString.split("\n")); Exception e = assertThrows(InvalidFormatException.class, () -> {parser.parse(testList);}); - String expectedMessage = "Error with number conversion on line: Company, Company Inc., NotANumber\n" + - "Last field must be a number"; + String expectedMessage = "Error with number conversion on line: Company, Company Inc., NotANumber,1;1;1;1;1;1\n" + + "ensure all number fields are actually numbers"; assertEquals(expectedMessage, e.getMessage()); } @Test public void EmptySymbolFieldExceptionTest() { - exampleString += ",test,1"; + exampleString += ",test,1,1;1;1;1;1;1"; List testList = List.of(exampleString.split("\n")); Exception e = assertThrows(InvalidFormatException.class, () -> {parser.parse(testList);}); - String expectedMessage = "Illegal argument on line: ,test,1\n" + + String expectedMessage = "Illegal argument on line: ,test,1,1;1;1;1;1;1\n" + "Symbol cannot be null or blank"; assertEquals(expectedMessage, e.getMessage()); } @Test public void EmptyCompanyNameFieldExceptionTest() { - exampleString += "test,,1"; + exampleString += "test,,1,1;1;1;1;1;1"; List testList = List.of(exampleString.split("\n")); Exception e = assertThrows(InvalidFormatException.class, () -> {parser.parse(testList);}); - String expectedMessage = "Illegal argument on line: test,,1\n" + + String expectedMessage = "Illegal argument on line: test,,1,1;1;1;1;1;1\n" + "Company cannot be null or blank"; assertEquals(expectedMessage, e.getMessage()); } diff --git a/src/test/java/millions/controller/fileIO/CSV/StockFileReaderTest.java b/src/test/java/millions/controller/fileIO/CSV/StockFileReaderTest.java index 159c948..4b07a29 100644 --- a/src/test/java/millions/controller/fileIO/CSV/StockFileReaderTest.java +++ b/src/test/java/millions/controller/fileIO/CSV/StockFileReaderTest.java @@ -5,6 +5,7 @@ import org.junit.jupiter.api.Test; import org.junit.jupiter.api.io.TempDir; +import java.io.IOException; import java.nio.file.Files; import java.nio.file.Path; @@ -21,14 +22,14 @@ public static void setUpTestFile() throws Exception { String string = "# Top 500 US Stocks by Market Cap\n"; string += "# Ticker,Name,Price\n"; string += "\n"; - string += "NVDA,Nvidia,191.27\n"; - string += "AAPL,Apple Inc.,276.43\n"; - string += "MSFT,Microsoft,404.68\n"; + string += "NVDA,Nvidia,191.27,1;1;1;1;1;1\n"; + string += "AAPL,Apple Inc.,276.43,1;1;1;1;1;1\n"; + string += "MSFT,Microsoft,404.68,1;1;1;1;1;1\n"; Files.writeString(sharedFile, string); } @Test - public void testReadStockFile() { + public void testReadStockFile() throws IOException { StockFileReader stockFileReader = new StockFileReader(); assertEquals(6, stockFileReader.readFile(sharedFile).size()); } diff --git a/src/test/java/millions/model/ExchangeListenerTest.java b/src/test/java/millions/model/ExchangeListenerTest.java index 935ab43..569dad4 100644 --- a/src/test/java/millions/model/ExchangeListenerTest.java +++ b/src/test/java/millions/model/ExchangeListenerTest.java @@ -7,6 +7,7 @@ import java.util.ArrayList; import java.util.List; +import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; @@ -29,16 +30,22 @@ public void onTransactionCompleted(Transaction transaction) { } class ExchangeListenerTest { - + static List dummyVolatilityParams; private Exchange exchange; private Player player; private TestExchangeListener listener; - + @BeforeAll + static void setUpVolatilityParams() { + dummyVolatilityParams = new ArrayList<>(); + for (int i = 0; i < 6; i++) { + dummyVolatilityParams.add(BigDecimal.valueOf(1)); + } + } @BeforeEach void setUp() { - Stock s1 = new Stock("AAPL", "Apple Inc.", BigDecimal.valueOf(100)); - Stock s2 = new Stock("GOOG", "Alphabet Inc.", BigDecimal.valueOf(200)); - Stock s3 = new Stock("NVDA", "NVidia Inc.", BigDecimal.valueOf(200)); + Stock s1 = new Stock("AAPL", "Apple Inc.", BigDecimal.valueOf(100),dummyVolatilityParams); + Stock s2 = new Stock("GOOG", "Alphabet Inc.", BigDecimal.valueOf(200),dummyVolatilityParams); + Stock s3 = new Stock("NVDA", "NVidia Inc.", BigDecimal.valueOf(200),dummyVolatilityParams); exchange = new Exchange("NASDAQ", List.of(s1, s2, s3)); player = new Player("TestPlayer", BigDecimal.valueOf(10000)); diff --git a/src/test/java/millions/model/ExchangeTest.java b/src/test/java/millions/model/ExchangeTest.java index 2e689a6..336b63b 100644 --- a/src/test/java/millions/model/ExchangeTest.java +++ b/src/test/java/millions/model/ExchangeTest.java @@ -3,17 +3,28 @@ import static org.junit.jupiter.api.Assertions.*; import java.math.BigDecimal; +import java.util.ArrayList; import java.util.List; import java.util.stream.IntStream; +import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.Test; class ExchangeTest { + static List dummyVolatilityParams; + @BeforeAll + static void setUpVolatilityParams() { + dummyVolatilityParams = new ArrayList<>(); + for (int i = 0; i < 6; i++) { + dummyVolatilityParams.add(BigDecimal.valueOf(1)); + } + } @Test public void testGetters() { - Stock s1 = new Stock("PEAR", "Pear Inc.", BigDecimal.valueOf(300)); - Stock s2 = new Stock("DOGL", "DOOGLE Inc.", BigDecimal.valueOf(200.00)); - Stock s3 = new Stock("MSFT", "EpsteinSoft Inc.", BigDecimal.valueOf(0.02)); + + Stock s1 = new Stock("PEAR", "Pear Inc.", BigDecimal.valueOf(300), dummyVolatilityParams); + Stock s2 = new Stock("DOGL", "DOOGLE Inc.", BigDecimal.valueOf(200.00), dummyVolatilityParams); + Stock s3 = new Stock("MSFT", "EpsteinSoft Inc.", BigDecimal.valueOf(0.02), dummyVolatilityParams); Exchange exchange = new Exchange("exchange", List.of(s1, s2)); @@ -31,9 +42,9 @@ public void testGetters() { @Test public void happyPath() { - Stock s1 = new Stock("PEAR", "Pear Inc.", BigDecimal.valueOf(300)); - Stock s2 = new Stock("DOGL", "DOOGLE Inc.", BigDecimal.valueOf(200.00)); - Stock s3 = new Stock("MSFT", "EpsteinSoft Inc.", BigDecimal.valueOf(0.02)); + Stock s1 = new Stock("PEAR", "Pear Inc.", BigDecimal.valueOf(300), dummyVolatilityParams); + Stock s2 = new Stock("DOGL", "DOOGLE Inc.", BigDecimal.valueOf(200.00), dummyVolatilityParams); + Stock s3 = new Stock("MSFT", "EpsteinSoft Inc.", BigDecimal.valueOf(0.02), dummyVolatilityParams); Exchange exchange = new Exchange("exchange", List.of(s1, s2, s3)); Player player = new Player("name", BigDecimal.valueOf(1000)); @@ -56,7 +67,7 @@ public void happyPath() { @Test public void testNullsAndInvalid() { - Stock s1 = new Stock("MSFT", "EpsteinSoft Inc.", BigDecimal.valueOf(0.02)); + Stock s1 = new Stock("MSFT", "EpsteinSoft Inc.", BigDecimal.valueOf(0.02), dummyVolatilityParams); Exchange exchange = new Exchange("exchange", List.of(s1)); Player player = new Player("name", BigDecimal.valueOf(1000)); @@ -69,11 +80,11 @@ public void testNullsAndInvalid() { assertThrows( IllegalArgumentException.class, - () -> new Exchange("", List.of(new Stock("PEAR", "Pear Inc.", BigDecimal.valueOf(300))))); + () -> new Exchange("", List.of(new Stock("PEAR", "Pear Inc.", BigDecimal.valueOf(300), dummyVolatilityParams)))); assertThrows( IllegalArgumentException.class, - () -> new Exchange(null, List.of(new Stock("PEAR", "Pear Inc.", BigDecimal.valueOf(300))))); + () -> new Exchange(null, List.of(new Stock("PEAR", "Pear Inc.", BigDecimal.valueOf(300), dummyVolatilityParams)))); assertThrows(IllegalArgumentException.class, () -> exchange.buy("DOGL", player, 2)); @@ -85,9 +96,9 @@ public void testNullsAndInvalid() { @Test public void testGetGainers() { - Stock s1 = new Stock("MSFT", "EpsteinSoft Inc.", BigDecimal.valueOf(0.02)); - Stock s2 = new Stock("PEAR", "Pear Inc.", BigDecimal.valueOf(300)); - Stock s3 = new Stock("DOGL", "DOOGLE Inc.", BigDecimal.valueOf(200.00)); + Stock s1 = new Stock("MSFT", "EpsteinSoft Inc.", BigDecimal.valueOf(0.02), dummyVolatilityParams); + Stock s2 = new Stock("PEAR", "Pear Inc.", BigDecimal.valueOf(300), dummyVolatilityParams); + Stock s3 = new Stock("DOGL", "DOOGLE Inc.", BigDecimal.valueOf(200.00), dummyVolatilityParams); Exchange exchange = new Exchange("exchange", List.of(s1, s2, s3)); exchange.advance(); @@ -109,9 +120,9 @@ public void testGetGainers() { @Test public void testGetLosers() { - Stock s1 = new Stock("MSFT", "EpsteinSoft Inc.", BigDecimal.valueOf(0.02)); - Stock s2 = new Stock("PEAR", "Pear Inc.", BigDecimal.valueOf(300)); - Stock s3 = new Stock("DOGL", "DOOGLE Inc.", BigDecimal.valueOf(200.00)); + Stock s1 = new Stock("MSFT", "EpsteinSoft Inc.", BigDecimal.valueOf(0.02), dummyVolatilityParams); + Stock s2 = new Stock("PEAR", "Pear Inc.", BigDecimal.valueOf(300), dummyVolatilityParams); + Stock s3 = new Stock("DOGL", "DOOGLE Inc.", BigDecimal.valueOf(200.00), dummyVolatilityParams); Exchange exchange = new Exchange("exchange", List.of(s1, s2, s3)); diff --git a/src/test/java/millions/model/PlayerListenerTest.java b/src/test/java/millions/model/PlayerListenerTest.java index 71c94d6..274bd7c 100644 --- a/src/test/java/millions/model/PlayerListenerTest.java +++ b/src/test/java/millions/model/PlayerListenerTest.java @@ -6,6 +6,7 @@ import java.util.ArrayList; import java.util.List; +import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; @@ -35,10 +36,16 @@ public void onStatusChanged(String newStatus) { } class PlayerListenerTest { - + static List dummyVolatilityParams; private Player player; private TestPlayerListener listener; - + @BeforeAll + static void setUpVolatilityParams() { + dummyVolatilityParams = new ArrayList<>(); + for (int i = 0; i < 6; i++) { + dummyVolatilityParams.add(BigDecimal.valueOf(1)); + } + } @BeforeEach void setUp() { player = new Player("TestPlayer", BigDecimal.valueOf(10000)); @@ -62,7 +69,8 @@ void withdrawMoneyNotifiesListener() { @Test void addShareNotifiesPortfolioAndStatus() { - Stock stock = new Stock("AAPL", "Apple Inc.", BigDecimal.valueOf(100)); + + Stock stock = new Stock("AAPL", "Apple Inc.", BigDecimal.valueOf(100), dummyVolatilityParams); Share share = new Share(stock, BigDecimal.valueOf(1), BigDecimal.valueOf(100)); player.addShareToPortfolio(share); @@ -72,7 +80,7 @@ void addShareNotifiesPortfolioAndStatus() { @Test void removeShareNotifiesPortfolioAndStatus() { - Stock stock = new Stock("AAPL", "Apple Inc.", BigDecimal.valueOf(100)); + Stock stock = new Stock("AAPL", "Apple Inc.", BigDecimal.valueOf(100), dummyVolatilityParams); Share share = new Share(stock, BigDecimal.valueOf(1), BigDecimal.valueOf(100)); player.addShareToPortfolio(share); diff --git a/src/test/java/millions/model/PortfolioTest.java b/src/test/java/millions/model/PortfolioTest.java index a208066..9219d58 100644 --- a/src/test/java/millions/model/PortfolioTest.java +++ b/src/test/java/millions/model/PortfolioTest.java @@ -3,15 +3,25 @@ import static org.junit.jupiter.api.Assertions.*; import java.math.BigDecimal; +import java.util.ArrayList; +import java.util.List; +import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.Test; class PortfolioTest { - + static List dummyVolatilityParams; + @BeforeAll + static void setUpVolatilityParams() { + dummyVolatilityParams = new ArrayList<>(); + for (int i = 0; i < 6; i++) { + dummyVolatilityParams.add(BigDecimal.valueOf(1)); + } + } @Test public void happyPath() { Portfolio portfolio = new Portfolio(); - Stock stock = new Stock("PEAR", "Pear Inc.", BigDecimal.valueOf(300)); + Stock stock = new Stock("PEAR", "Pear Inc.", BigDecimal.valueOf(300), dummyVolatilityParams); Share share = new Share(stock, 10, BigDecimal.valueOf(300)); assertTrue(portfolio.addShare(share)); @@ -27,8 +37,8 @@ public void happyPath() { @Test public void testGettersAndSetters() { Portfolio portfolio = new Portfolio(); - Stock stock1 = new Stock("PEAR", "Pear Inc.", BigDecimal.valueOf(300)); - Stock stock2 = new Stock("DOGL", "DOOGLE Inc.", BigDecimal.valueOf(200.00)); + Stock stock1 = new Stock("PEAR", "Pear Inc.", BigDecimal.valueOf(300), dummyVolatilityParams); + Stock stock2 = new Stock("DOGL", "DOOGLE Inc.", BigDecimal.valueOf(200.00), dummyVolatilityParams); Share share1 = new Share(stock1, 10, BigDecimal.valueOf(300)); Share share2 = new Share(stock2, 5, BigDecimal.valueOf(200)); @@ -56,7 +66,7 @@ public void testGettersAndSetters() { @Test public void testGetNetWorth() { Portfolio portfolio = new Portfolio(); - Stock stock = new Stock("PEAR", "Pear Inc.", BigDecimal.valueOf(100)); + Stock stock = new Stock("PEAR", "Pear Inc.", BigDecimal.valueOf(100), dummyVolatilityParams); Share share = new Share(stock, 1, BigDecimal.valueOf(50)); portfolio.addShare(share); @@ -66,7 +76,7 @@ public void testGetNetWorth() { @Test public void testNullsAndInvalid() { - Stock stock1 = new Stock("PEAR", "Pear Inc.", BigDecimal.valueOf(300)); + Stock stock1 = new Stock("PEAR", "Pear Inc.", BigDecimal.valueOf(300), dummyVolatilityParams); Share share1 = new Share(stock1, 10, BigDecimal.valueOf(300)); Portfolio portfolio = new Portfolio(); assertFalse(portfolio.removeShare(null)); diff --git a/src/test/java/millions/model/PurchaseTest.java b/src/test/java/millions/model/PurchaseTest.java index 3c76e85..1c3e4ba 100644 --- a/src/test/java/millions/model/PurchaseTest.java +++ b/src/test/java/millions/model/PurchaseTest.java @@ -3,13 +3,25 @@ import static org.junit.jupiter.api.Assertions.*; import java.math.BigDecimal; +import java.util.ArrayList; +import java.util.List; +import org.junit.jupiter.api.BeforeAll; +import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; class PurchaseTest { + static List dummyVolatilityParams; + @BeforeAll + static void setUpVolatilityParams() { + dummyVolatilityParams = new ArrayList<>(); + for (int i = 0; i < 6; i++) { + dummyVolatilityParams.add(BigDecimal.valueOf(1)); + } + } @Test public void testHappyPath() { - Stock stock = new Stock("TestStock", "TST", BigDecimal.valueOf(10)); + Stock stock = new Stock("TestStock", "TST", BigDecimal.valueOf(10), dummyVolatilityParams); Share share = new Share(stock, 2, BigDecimal.valueOf(10)); Player player = new Player("TestPlayer", BigDecimal.valueOf(100)); Purchase purchase = new Purchase(share, 1); @@ -24,7 +36,7 @@ public void testHappyPath() { @Test public void testNullsAndInvalid() { - Stock stock = new Stock("TestStock", "TST", BigDecimal.valueOf(10)); + Stock stock = new Stock("TestStock", "TST", BigDecimal.valueOf(10), dummyVolatilityParams); Share share = new Share(stock, 2, BigDecimal.valueOf(10)); Player player = new Player("TestPlayer", BigDecimal.valueOf(100)); Purchase purchase = new Purchase(share, 1); diff --git a/src/test/java/millions/model/SaleTest.java b/src/test/java/millions/model/SaleTest.java index 4a8a4d1..17fcebd 100644 --- a/src/test/java/millions/model/SaleTest.java +++ b/src/test/java/millions/model/SaleTest.java @@ -3,14 +3,24 @@ import static org.junit.jupiter.api.Assertions.*; import java.math.BigDecimal; +import java.util.ArrayList; +import java.util.List; +import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.Test; class SaleTest { - + static List dummyVolatilityParams; + @BeforeAll + static void setUpVolatilityParams() { + dummyVolatilityParams = new ArrayList<>(); + for (int i = 0; i < 6; i++) { + dummyVolatilityParams.add(BigDecimal.valueOf(1)); + } + } @Test public void testHappyPath() { - Stock stock = new Stock("TestStock", "TST", BigDecimal.valueOf(10)); + Stock stock = new Stock("TestStock", "TST", BigDecimal.valueOf(10), dummyVolatilityParams); Share share = new Share(stock, 2, BigDecimal.valueOf(10)); Player player = new Player("TestPlayer", BigDecimal.valueOf(100)); player.getPortfolio().addShare(share); @@ -24,7 +34,7 @@ public void testHappyPath() { @Test public void testNullsAndInvalid() { - Stock stock = new Stock("TestStock", "TST", BigDecimal.valueOf(10)); + Stock stock = new Stock("TestStock", "TST", BigDecimal.valueOf(10), dummyVolatilityParams); Share share = new Share(stock, 2, BigDecimal.valueOf(10)); Player player = new Player("TestPlayer", BigDecimal.valueOf(100)); Sale sale = new Sale(share, 1); diff --git a/src/test/java/millions/model/ShareTest.java b/src/test/java/millions/model/ShareTest.java index 3f82181..b27c832 100644 --- a/src/test/java/millions/model/ShareTest.java +++ b/src/test/java/millions/model/ShareTest.java @@ -3,21 +3,31 @@ import static org.junit.jupiter.api.Assertions.*; import java.math.BigDecimal; +import java.util.ArrayList; +import java.util.List; +import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.Test; class ShareTest { - + static List dummyVolatilityParams; + @BeforeAll + static void setUpVolatilityParams() { + dummyVolatilityParams = new ArrayList<>(); + for (int i = 0; i < 6; i++) { + dummyVolatilityParams.add(BigDecimal.valueOf(1)); + } + } @Test public void testHappyPath() { - Stock stock = new Stock("AYO", "Ayhoo", BigDecimal.valueOf(10)); + Stock stock = new Stock("AYO", "Ayhoo", BigDecimal.valueOf(10), dummyVolatilityParams); Share share = new Share(stock, 5, BigDecimal.valueOf(10)); assertEquals(BigDecimal.valueOf(5), share.getQuantity()); } @Test public void testGetters() { - Stock stock = new Stock("AYO", "Ayhoo", BigDecimal.valueOf(10)); + Stock stock = new Stock("AYO", "Ayhoo", BigDecimal.valueOf(10), dummyVolatilityParams); Share share = new Share(stock, 5, BigDecimal.valueOf(10)); assertEquals(BigDecimal.valueOf(5), share.getQuantity()); assertEquals(stock, share.getStock()); @@ -26,7 +36,7 @@ public void testGetters() { @Test public void testNullsAndInvalid() { - Stock stock = new Stock("AYO", "Ayhoo", BigDecimal.valueOf(10)); + Stock stock = new Stock("AYO", "Ayhoo", BigDecimal.valueOf(10), dummyVolatilityParams); assertThrows(IllegalArgumentException.class, () -> new Share(null, 2, BigDecimal.valueOf(2))); assertThrows(IllegalArgumentException.class, () -> new Share(stock, 2, null)); assertThrows( diff --git a/src/test/java/millions/model/StockTest.java b/src/test/java/millions/model/StockTest.java index c28a6bd..bd85c31 100644 --- a/src/test/java/millions/model/StockTest.java +++ b/src/test/java/millions/model/StockTest.java @@ -7,22 +7,31 @@ import java.util.Arrays; import java.util.List; +import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.Test; class StockTest { + static List dummyVolatilityParams; + @BeforeAll + static void setUpVolatilityParams() { + dummyVolatilityParams = new ArrayList<>(); + for (int i = 0; i < 6; i++) { + dummyVolatilityParams.add(BigDecimal.valueOf(1)); + } + } @Test public void testHapyPath() { - Stock stock = new Stock("NVDA", "Nvadia", BigDecimal.valueOf(20)); + Stock stock = new Stock("NVDA", "Nvadia", BigDecimal.valueOf(20), dummyVolatilityParams); Stock stock2 = new Stock( - "NVDA", "Nvadia", new ArrayList(Arrays.asList(BigDecimal.valueOf(20)))); + "NVDA", "Nvadia", new ArrayList(Arrays.asList(BigDecimal.valueOf(20))),dummyVolatilityParams); stock2.addNewSalesPrice(BigDecimal.valueOf(30)); assertEquals(BigDecimal.valueOf(30), stock2.getSalesPrice()); } @Test public void settersAndGetters() { - Stock stock = new Stock("NVDA", "Nvadia", BigDecimal.valueOf(20)); + Stock stock = new Stock("NVDA", "Nvadia", BigDecimal.valueOf(20), dummyVolatilityParams); assertEquals("NVDA", stock.getSymbol()); assertEquals("Nvadia", stock.getCompany()); } @@ -30,7 +39,7 @@ public void settersAndGetters() { @Test public void testGetPriceChange() { ArrayList prices = new ArrayList<>(List.of(BigDecimal.valueOf(100), BigDecimal.valueOf(125))); - Stock stock = new Stock("AAPL", "Apple", prices); + Stock stock = new Stock("AAPL", "Apple", prices, dummyVolatilityParams); assertEquals(BigDecimal.valueOf(25), stock.getLatestPriceChange()); stock.addNewSalesPrice(BigDecimal.valueOf(155)); assertEquals(BigDecimal.valueOf(30), stock.getLatestPriceChange()); @@ -40,12 +49,12 @@ public void testGetPriceChange() { public void testNullsAndInvalid() { assertThrows( - IllegalArgumentException.class, () -> new Stock(null, "Nvadia", BigDecimal.valueOf(20))); + IllegalArgumentException.class, () -> new Stock(null, "Nvadia", BigDecimal.valueOf(20), dummyVolatilityParams)); assertThrows( - IllegalArgumentException.class, () -> new Stock("NVDA", null, BigDecimal.valueOf(20))); + IllegalArgumentException.class, () -> new Stock("NVDA", null, BigDecimal.valueOf(20), dummyVolatilityParams)); assertThrows( - IllegalArgumentException.class, () -> new Stock("NVDA", "", BigDecimal.valueOf(20))); + IllegalArgumentException.class, () -> new Stock("NVDA", "", BigDecimal.valueOf(20), dummyVolatilityParams)); assertThrows( - IllegalArgumentException.class, () -> new Stock("", "Nvadia", BigDecimal.valueOf(20))); + IllegalArgumentException.class, () -> new Stock("", "Nvadia", BigDecimal.valueOf(20), dummyVolatilityParams)); } } diff --git a/src/test/java/millions/model/TransactionArchiveTest.java b/src/test/java/millions/model/TransactionArchiveTest.java index 426ed5b..de4e9cd 100644 --- a/src/test/java/millions/model/TransactionArchiveTest.java +++ b/src/test/java/millions/model/TransactionArchiveTest.java @@ -3,21 +3,29 @@ import static org.junit.jupiter.api.Assertions.*; import java.math.BigDecimal; +import java.util.ArrayList; import java.util.List; +import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; class TransactionArchiveTest { - + static List dummyVolatilityParams; TransactionArchive archive; Purchase purchase; Sale sale; - + @BeforeAll + static void setUpVolatilityParams() { + dummyVolatilityParams = new ArrayList<>(); + for (int i = 0; i < 6; i++) { + dummyVolatilityParams.add(BigDecimal.valueOf(1)); + } + } @BeforeEach public void setUp() { archive = new TransactionArchive(); - Stock stock = new Stock("SUS", "Samsung", BigDecimal.valueOf(10)); + Stock stock = new Stock("SUS", "Samsung", BigDecimal.valueOf(10), dummyVolatilityParams); Share share = new Share(stock, 2, BigDecimal.valueOf(10)); purchase = new Purchase(share, 1); sale = new Sale(share, 2);