Beispiel #1
0
        public async Task When_GetCountriesOfResidenceAsync_Called_Expect_FilteredAndOrderedResult()
        {
            //Arrange
            var dbResult = new List <CountryOfResidence>
            {
                new CountryOfResidence {
                    IsAvailable = true, Id = 1, Name = "Bulgaria", Order = 1
                },
                new CountryOfResidence {
                    IsAvailable = false, Id = 2, Name = "Japan", Order = 2
                },
                new CountryOfResidence {
                    IsAvailable = true, Id = 3, Name = "Brazil", Order = 3
                },
            };

            _countryOfResidenceRepositoryMock.Setup(x => x.GetAllAsync())
            .ReturnsAsync(dbResult);

            //Act
            var response = await _service.GetCountriesOfResidenceAsync();

            //Assert
            var expectedResult = dbResult
                                 .Where(o => o.IsAvailable)
                                 .OrderBy(o => o.Order)
                                 .ToList();

            _countryOfResidenceRepositoryMock.Verify(x => x.GetAllAsync(), Times.Once);
            Assert.Equal(expectedResult.Count, response.Count);
            Assert.Equal(expectedResult[0].Order, response[0].Order);
        }