コード例 #1
0
        public async Task DeleteAsync_WhenCalled_DeleteSeasonFromDb()
        {
            var season = new Season
            {
                Id = 1
            };

            await _seasonService.DeleteAsync(season);

            _seasonRepository.Verify(s => s.Remove(season), Times.Once);
            _unitOfWork.Verify(u => u.CompleteAsync(), Times.Once);
        }
コード例 #2
0
        public async Task DeleteNotExistingSeason()
        {
            var championshipsList = new List <Championship> {
                new Championship {
                    Id = 1, Name = "Premier League"
                }
            };
            var seasonsList = new List <Season>();

            var mockChampionshipRepo = new Mock <IRepository <Championship> >();

            var mockSeasonRepo = new Mock <IRepository <Season> >();

            mockSeasonRepo.Setup(r => r.All()).Returns(seasonsList.AsQueryable());

            var seasonService = new SeasonService(mockSeasonRepo.Object, mockChampionshipRepo.Object);

            await Assert.ThrowsAsync <Exception>(() => seasonService.DeleteAsync(1));
        }
コード例 #3
0
        public async Task SaveAndDeleteSeason()
        {
            var championshipsList = new List <Championship> {
                new Championship {
                    Id = 1, Name = "Premier League"
                }
            };
            var seasonsList = new List <Season>();

            var mockChampionshipRepo = new Mock <IRepository <Championship> >();

            mockChampionshipRepo.Setup(r => r.Get(It.IsAny <int>())).Returns <int>(id => championshipsList.FirstOrDefault(c => c.Id == id));

            var mockSeasonRepo = new Mock <IRepository <Season> >();

            mockSeasonRepo.Setup(r => r.All()).Returns(seasonsList.AsQueryable());
            mockSeasonRepo.Setup(r => r.AddAsync(It.IsAny <Season>())).Callback <Season>(season => seasonsList.Add(new Season
            {
                Id           = 1,
                Name         = season.Name,
                Championship = season.Championship
            }));
            mockSeasonRepo.Setup(r => r.Delete(It.IsAny <Season>())).Callback <Season>(season => seasonsList.Remove(season));

            var seasonService = new SeasonService(mockSeasonRepo.Object, mockChampionshipRepo.Object);

            var seasonViewModel = new SeasonViewModel
            {
                Name           = "2020/21",
                ChampionshipId = 1
            };

            await seasonService.CreateAsync(seasonViewModel);

            await seasonService.DeleteAsync(1);

            Assert.Empty(seasonService.GetAll(false));
        }