public async void Add_Order_ShouldReturnOk() { //Arrange var fakeOrderService = A.Fake <IOrderService>(); CreateOrderResponseDto expectedDto = new CreateOrderResponseDto(); expectedDto.RawOrderResponse = "steak, potato(x2), cake"; A.CallTo(() => fakeOrderService.Add(A <string> .Ignored)) .Returns(Task.FromResult(expectedDto.RawOrderResponse)); var orderController = new OrderController(fakeOrderService); CreateOrderDto createOrderDto = new CreateOrderDto(); createOrderDto.RawOrder = "night, 1, 2, 2, 4"; //Act var result = await orderController.Add(createOrderDto); var okObjectResult = result.Result as OkObjectResult; var createOrderResponseDto = okObjectResult.Value as CreateOrderResponseDto; //Assert Assert.IsType <OkObjectResult>(okObjectResult); Assert.Equal(createOrderResponseDto.RawOrderResponse, expectedDto.RawOrderResponse); }
public async Task <ActionResult <CreateOrderResponseDto> > Add(CreateOrderDto createOrderDto) { if (!ModelState.IsValid) { return(BadRequest()); } CreateOrderResponseDto createOrderResponseDto = new CreateOrderResponseDto(); createOrderResponseDto.RawOrderResponse = await _orderService.Add(createOrderDto.RawOrder); if (createOrderResponseDto.RawOrderResponse == null) { return(BadRequest()); } return(Ok(createOrderResponseDto)); }
public async void Add_ShouldReturnNullWhenNoDayTime() { //Arrange var fakeOrderRepository = A.Fake <IOrderRepository>(); var fakeDishRepository = A.Fake <IDishRepository>(); var fakeOrderDishRepository = A.Fake <IOrderDishRepository>(); var orderServices = new OrderService(fakeOrderRepository, fakeDishRepository, fakeOrderDishRepository); Dish dish = new Dish { Name = "Eggs", DishType = 1, DayTime = "morning", OrderMany = false }; A.CallTo(() => fakeOrderRepository.Add(A <Order> .Ignored)) .DoesNothing(); A.CallTo(() => fakeOrderDishRepository.Add(A <OrderDish> .Ignored)) .DoesNothing(); A.CallTo(() => fakeDishRepository.GetByDishType(A <string> .Ignored, A <int> .Ignored)) .Returns(dish); var rawOrder = "1, 2, 3"; string expectedResult = null; CreateOrderResponseDto createOrderResponseDto = new CreateOrderResponseDto(); //Act createOrderResponseDto.RawOrderResponse = await orderServices.Add(rawOrder); //Assert Assert.Equal(expectedResult, createOrderResponseDto.RawOrderResponse); }