public async void Handle_ReturnsNull_WhereCustomerDoesNotExists() { // Arrange var customerId = fixture.Create <int>(); var testDbContext = new ApplicationDbContextBuilder().Build(); mockMapper.Setup(x => x.Map <QueryResult>(null)).Returns((QueryResult)null); var sut = new QueryHandler(testDbContext, mockMapper.Object); // Act var actualResult = await sut.Handle(new Query(customerId), default(CancellationToken)); // Assert actualResult.Should().BeNull(); }
public async void Handle_ReturnsCustomer_WhereCustomerExists() { // Arrange var customerData = fixture.CreateMany <Data.Customer>(1).ToList(); var testDbContext = new ApplicationDbContextBuilder().WithCustomers(customerData).Build(); var expectedCustomer = fixture.Create <QueryResult>(); mockMapper.Setup(x => x.Map <QueryResult>(It.Is <Data.Customer>(y => y.CustomerId == customerData[0].CustomerId))).Returns(expectedCustomer); var sut = new QueryHandler(testDbContext, mockMapper.Object); // Act var actualResult = await sut.Handle(new Query(customerData[0].CustomerId), default(CancellationToken)); // Assert actualResult.Should().BeOfType <QueryResult>() .And.BeSameAs(expectedCustomer); }
public async void Handle_ReturnsQueryResult() { // Arrange var fixture = new Fixture(); var customerData = fixture.CreateMany <Data.Customer>().ToList(); var testDbContext = new ApplicationDbContextBuilder().WithCustomers(customerData).Build(); var expectedCustomers = fixture.CreateMany <QueryResult.Customer>().ToArray(); var mockMapper = new Mock <IMapper>(); mockMapper.Setup(x => x.Map <QueryResult.Customer[]>(customerData)).Returns(expectedCustomers); var sut = new QueryHandler(testDbContext, mockMapper.Object); // Act var actualResult = await sut.Handle(new Query(), default(CancellationToken)); // Assert actualResult.Should().BeOfType <QueryResult>() .Which.Customers.Should().BeSameAs(expectedCustomers); }