public async void Given_RequestToQueryAllServiceRequests_When_RepositoryIsNotEmpty_Then_ReturnsListOfServiceRequests()
        {
            // Arrange
            var expectedServiceRequest1 = new ServiceRequest("123", "Turn up the heat!", "Aaron");
            var expectedServiceRequest2 = new ServiceRequest("456", "It's too hot!", "Bobbi");

            var serviceRequests = new List <ServiceRequest>
            {
                expectedServiceRequest1,
                expectedServiceRequest2
            };

            _serviceRequestRepository
            .Setup(repo => repo.RetrieveAllAsync())
            .ReturnsAsync(serviceRequests);

            var query = new QueryAllServiceRequests();

            var target = new QueryAllServiceRequestsHandler(_logger.Object, _serviceRequestRepository.Object);

            // Act
            var actual = await target.Handle(query, default);

            // Assert
            Assert.NotEmpty(actual);
            Assert.Contains(expectedServiceRequest1, actual);
            Assert.Contains(expectedServiceRequest2, actual);
        }
        public async void Given_RequestToQueryAllServiceRequests_When_RepositoryIsEmpty_Then_ReturnsEmptyList()
        {
            // Arrange
            _serviceRequestRepository
            .Setup(repo => repo.RetrieveAllAsync())
            .ReturnsAsync(new List <ServiceRequest>());

            var query = new QueryAllServiceRequests();

            var target = new QueryAllServiceRequestsHandler(_logger.Object, _serviceRequestRepository.Object);

            // Act
            var actual = await target.Handle(query, default);

            // Assert
            Assert.Empty(actual);
        }