public void ProcessFillOrder_On_Already_Closed_Order() { var fillOrderRepo = new FillOrderRepo(); fillOrderRepo.CreateFillOrder(); FillOrderService fillOrderService = new FillOrderService(fillOrderRepo); var orders = fillOrderService.ViewOpenOrders(); var singleOrder = orders.First(); var closedOrder = fillOrderService.ProcessFillOrder(singleOrder.Id); Assert.Throws <Exception>(() => fillOrderService.ProcessFillOrder(closedOrder.Id)); }
public IActionResult ProcessFillOrder([FromBody] FillOrder fillOrder) { if (!ModelState.IsValid) { throw new Exception(); } return(Ok(_fillOrderService.ProcessFillOrder(fillOrder))); }
public IActionResult ProcessFillOrder([FromBody] FillOrder submittedFillOrder) { try { _fillOrderService.ProcessFillOrder(submittedFillOrder); return(Ok()); } catch (Exception exception) { return(NotFound(exception.Message)); } }
public void Unresolved_FillOrders_Can_Be_Processed() { // Arrange var fillOrderToBeProcessed = new FillOrder() { Id = 1121, }; _mockFillOrderRepo.GetFillOrderById(fillOrderToBeProcessed.Id).Returns(new FillOrder() { Id = 1121, ProcessedTimestamp = null }); // Act var processedFillOrder = _fillOrderService.ProcessFillOrder(fillOrderToBeProcessed); // Assert Assert.NotNull(processedFillOrder.ProcessedTimestamp); _mockFillOrderRepo.Received(1).GetFillOrderById(fillOrderToBeProcessed.Id); _mockFillOrderRepo.ReceivedWithAnyArgs(1).UpdateFillOrder(processedFillOrder); }
public void ProcessFillOrder_On_Open_Order() { //Because the database is already in memory, it just calls this directly. Normally would use an in memory database to mock out the real one. var fillOrderRepo = new FillOrderRepo(); fillOrderRepo.CreateFillOrder(); FillOrderService fillOrderService = new FillOrderService(fillOrderRepo); var orders = fillOrderService.ViewOpenOrders(); var singleOrder = orders.First(); var closedOrder = fillOrderService.ProcessFillOrder(singleOrder.Id); Assert.True(closedOrder.OrderClosed); }
public void Processed_FillOrder_CannontBe_Modified() { int fillOrderId = 1; FillOrder testFillOrder = new FillOrder() { Id = fillOrderId, ProductId = 1, Processed = true, CreatedDate = DateTime.Now, ProcessDate = DateTime.Now, Stock = 1 }; var mockFillOrderRepo = Substitute.For <IFillOrderRepo>(); mockFillOrderRepo.GetFillOrderById(fillOrderId).Returns(testFillOrder); FillOrderService fillOrderService = new FillOrderService(mockFillOrderRepo); try { fillOrderService.ProcessFillOrder(testFillOrder); Assert.Fail("FillOrder was processed!"); } catch (Exception exception) { Assert.AreEqual("FillOrder cannot be processed. Try again later.", exception.Message); return; } }
public void Unresolved_FillOrder_CanBe_Processed() { int fillOrderId = 1; FillOrder testFillOrder = new FillOrder() { Id = fillOrderId, ProductId = 1, Processed = false, CreatedDate = DateTime.Now, ProcessDate = null, Stock = 1 }; var mockFillOrderRepo = Substitute.For <IFillOrderRepo>(); mockFillOrderRepo.GetFillOrderById(fillOrderId).Returns(testFillOrder); FillOrderService fillOrderService = new FillOrderService(mockFillOrderRepo); try { fillOrderService.ProcessFillOrder(testFillOrder); Assert.IsTrue(true); } catch (Exception exception) { Assert.Fail(exception.Message); return; } }
public IActionResult ProcessOrder(string id) { _service.ProcessFillOrder(id); return(RedirectToAction("Index")); }
public IActionResult ProccessFillOrder([FromBody] FillOrder fillOrder) { _fillOrderService.ProcessFillOrder(fillOrder); return(Ok()); }