public async Task Handle_SalesPersonExists_ReturnSalesPerson( Core.Entities.SalesPerson salesPerson, [Frozen] Mock <IRepository <Core.Entities.SalesPerson> > salesPersonRepoMock, GetSalesPersonQueryHandler sut, GetSalesPersonQuery query ) { //Arrange salesPersonRepoMock.Setup(x => x.GetBySpecAsync( It.IsAny <GetSalesPersonSpecification>(), It.IsAny <CancellationToken>() )) .ReturnsAsync(salesPerson); //Act var result = await sut.Handle(query, CancellationToken.None); //Assert result.Should().NotBeNull(); salesPersonRepoMock.Verify(x => x.GetBySpecAsync( It.IsAny <GetSalesPersonSpecification>(), It.IsAny <CancellationToken>() )); result.FullName().Should().Be(salesPerson.FullName); }
public void Handle_SalesPersonsNull_ThrowsArgumentNullException( [Frozen] Mock <IRepository <Core.Entities.SalesPerson> > salesPersonRepoMock, GetSalesPersonQueryHandler sut, GetSalesPersonQuery query ) { //Arrange salesPersonRepoMock.Setup(x => x.GetBySpecAsync( It.IsAny <GetSalesPersonSpecification>(), It.IsAny <CancellationToken>() )) .ReturnsAsync((Core.Entities.SalesPerson)null); //Act Func <Task> func = async() => await sut.Handle(query, CancellationToken.None); //Assert func.Should().ThrowAsync <ArgumentNullException>() .WithMessage("Value cannot be null. (Parameter 'salesPerson')"); }