From 834e7e33893920df790d8bbcb7efb4d31670a216 Mon Sep 17 00:00:00 2001 From: Onesimus Wiafe Date: Thu, 8 Aug 2024 18:03:34 +0000 Subject: [PATCH 1/2] updated tests --- .../trading/marketdataservice/model/MarketData.java | 4 ++++ .../services/MarketDataServiceTest.java | 2 +- .../services/orderbook/OrderBookServiceTest.java | 10 +++++----- .../trading/order_processing/nats/NatsSubscriber.java | 4 ++++ 4 files changed, 14 insertions(+), 6 deletions(-) diff --git a/MarketDataService/src/main/java/com/joe/trading/marketdataservice/model/MarketData.java b/MarketDataService/src/main/java/com/joe/trading/marketdataservice/model/MarketData.java index 259d259..f0a0828 100755 --- a/MarketDataService/src/main/java/com/joe/trading/marketdataservice/model/MarketData.java +++ b/MarketDataService/src/main/java/com/joe/trading/marketdataservice/model/MarketData.java @@ -34,6 +34,10 @@ public class MarketData implements Serializable { private String EXCHANGE; + public MarketData(String ticker){ + this.TICKER = ticker; + } + @Override public String toString() { return "MarketData{" + diff --git a/MarketDataService/src/test/java/com/joe/trading/marketdataservice/services/MarketDataServiceTest.java b/MarketDataService/src/test/java/com/joe/trading/marketdataservice/services/MarketDataServiceTest.java index cd3dd6a..028d2e9 100755 --- a/MarketDataService/src/test/java/com/joe/trading/marketdataservice/services/MarketDataServiceTest.java +++ b/MarketDataService/src/test/java/com/joe/trading/marketdataservice/services/MarketDataServiceTest.java @@ -154,7 +154,7 @@ void testInitialSubscriptionCheck(){ @Test void buildInitialCacheEntryTest() throws JsonProcessingException { - List marketDataList = Arrays.asList(new MarketData(), new MarketData()); + List marketDataList = Arrays.asList(new MarketData("IBM"), new MarketData("AAPL")); Object[] marketDataArray = marketDataList.toArray(); when(restTemplate.getForEntity(anyString(), eq(Object[].class))) diff --git a/MarketDataService/src/test/java/com/joe/trading/marketdataservice/services/orderbook/OrderBookServiceTest.java b/MarketDataService/src/test/java/com/joe/trading/marketdataservice/services/orderbook/OrderBookServiceTest.java index 74ae9b1..a1441db 100755 --- a/MarketDataService/src/test/java/com/joe/trading/marketdataservice/services/orderbook/OrderBookServiceTest.java +++ b/MarketDataService/src/test/java/com/joe/trading/marketdataservice/services/orderbook/OrderBookServiceTest.java @@ -37,11 +37,11 @@ public void setUp(){ void testPublishOrderBook() throws JsonProcessingException { doNothing().when(natsService).publish(any(), any()); - List orderBooks = new ArrayList<>(); - orderBooks.add(new OrderBook()); - orderBooks.add(new OrderBook()); + List orderBooks = new ArrayList<>(); + orderBooks.add(new com.joe.trading.shared.dtos.OrderBook()); + orderBooks.add(new com.joe.trading.shared.dtos.OrderBook()); - OrderBook[] orderBookArray = new OrderBook[orderBooks.size()]; + com.joe.trading.shared.dtos.OrderBook[] orderBookArray = new com.joe.trading.shared.dtos.OrderBook[orderBooks.size()]; int count = 0; while (count < orderBooks.size()){ @@ -49,7 +49,7 @@ void testPublishOrderBook() throws JsonProcessingException { count += 1;; } - when(restTemplate.getForEntity(anyString(), eq(OrderBook[].class))) + when(restTemplate.getForEntity(anyString(), eq(com.joe.trading.shared.dtos.OrderBook[].class))) .thenReturn(ResponseEntity.ok(orderBookArray)); orderBookService.publishOrderBook(); diff --git a/OrderProcessingService/src/main/java/com/joe/trading/order_processing/nats/NatsSubscriber.java b/OrderProcessingService/src/main/java/com/joe/trading/order_processing/nats/NatsSubscriber.java index 8b4ce67..25373f4 100755 --- a/OrderProcessingService/src/main/java/com/joe/trading/order_processing/nats/NatsSubscriber.java +++ b/OrderProcessingService/src/main/java/com/joe/trading/order_processing/nats/NatsSubscriber.java @@ -137,6 +137,10 @@ private List updateInternalOrders(String cacheKey, String key, List orderBooksForKey = books.stream() .map(orderBookMapper::mapToOrderBook).toList(); + if (openOrders == null){ + return orderBooksForKey; + } + orderBooksForKey.forEach(book -> { if (openOrders.contains(book.getId())){ internalOrders.add(book); From 78ab8fc5f5d3f907963a9263ef644952cf469476 Mon Sep 17 00:00:00 2001 From: Onesimus Wiafe Date: Thu, 8 Aug 2024 18:06:04 +0000 Subject: [PATCH 2/2] update test --- .../services/orderbook/OrderBookServiceTest.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/MarketDataService/src/test/java/com/joe/trading/marketdataservice/services/orderbook/OrderBookServiceTest.java b/MarketDataService/src/test/java/com/joe/trading/marketdataservice/services/orderbook/OrderBookServiceTest.java index a1441db..de9381f 100755 --- a/MarketDataService/src/test/java/com/joe/trading/marketdataservice/services/orderbook/OrderBookServiceTest.java +++ b/MarketDataService/src/test/java/com/joe/trading/marketdataservice/services/orderbook/OrderBookServiceTest.java @@ -54,7 +54,7 @@ void testPublishOrderBook() throws JsonProcessingException { orderBookService.publishOrderBook(); - verify(natsService, times(8)).publish(any(), any()); + verify(natsService, times(32)).publish(any(), any()); } }