public async Task Handle_LoadBalancerFound_LightsailLoadBalancerReturned() { //Arrange var existingLoadBalancer = new LoadBalancer(); var fakeAmazonLightsail = Substitute.For <IAmazonLightsail>(); fakeAmazonLightsail .GetLoadBalancerAsync( Arg.Is <GetLoadBalancerRequest>( arg => arg.LoadBalancerName == "some-load-balancer"), default) .Returns(new GetLoadBalancerResponse() { LoadBalancer = existingLoadBalancer }); var handler = new GetLoadBalancerByNameQueryHandler( fakeAmazonLightsail); //Act var loadBalancer = await handler.Handle( new GetLoadBalancerByNameQuery("some-load-balancer"), default); //Assert Assert.IsNotNull(loadBalancer); Assert.AreSame(existingLoadBalancer, loadBalancer); }
public async Task Handle_LoadBalancerNotFound_ReturnsNull() { //Arrange var fakeAmazonLightsail = Substitute.For <IAmazonLightsail>(); fakeAmazonLightsail .GetLoadBalancerAsync( Arg.Is <GetLoadBalancerRequest>( arg => arg.LoadBalancerName == "some-load-balancer"), default) .Throws(new NotFoundException("Not found")); var handler = new GetLoadBalancerByNameQueryHandler( fakeAmazonLightsail); //Act var loadBalancer = await handler.Handle( new GetLoadBalancerByNameQuery("some-load-balancer"), default); //Assert Assert.IsNull(loadBalancer); }