/// <summary> /// Executes the get all baskets use case. /// </summary> /// <param name="request">The request with the basket filter to retriev.</param> /// <returns>Returns a collection of baskets.</returns> public async Task <IEnumerable <Basket> > Execute(GetAllBasketsRequest request) { Ensure.IsNotNull(request); var basket = await this.basketsRepository.GetAll(); return(this.basketsTypeAdapter.ToDto(basket)); }
public async Task <IActionResult> GetAllBaskets([FromHeader(Name = "customer_email")] string customerEmail) { var result = await this.getAllBaskets .Execute(GetAllBasketsRequest.Create()); if (null == result) { return(NotFound()); } return(Ok(result)); }
public async Task GetBasketsById_NullRequest_ThrowsException() { //Arrange var mock = GetAllBasketsMock.Create(); var target = mock.Target; GetAllBasketsRequest request = null; //Act async Task execute() => await target.Execute(request); //Assert await Assert.ThrowsAsync <ArgumentNullException>(execute); }
public async Task GetAllBasketsTests_ValidRequest_RepositoryCalledOnce() { //Arrange var basketId = Guid.NewGuid().ToString(); var mock = GetAllBasketsMock.Create(); var target = mock.Target; var request = GetAllBasketsRequest.Create(); //Act var actual = await target.Execute(request); //Assert mock.BasketsRepositoryMock.Verify(rep => rep.GetAll(), Times.Once()); }