public async Task DeleteNotExistingReferee() { var countriesList = new List <Country> { new Country { Id = 1, Name = "England", Code = "EN" } }; var refereesList = new List <Referee>(); var mockCountryRepo = new Mock <IRepository <Country> >(); var mockRefereeRepo = new Mock <IRepository <Referee> >(); mockRefereeRepo.Setup(r => r.All()).Returns(refereesList.AsQueryable()); var refereeService = new RefereeService(mockRefereeRepo.Object, mockCountryRepo.Object); await Assert.ThrowsAsync <Exception>(() => refereeService.DeleteAsync(1)); }
public async Task SaveAndDeleteReferee() { var countriesList = new List <Country> { new Country { Id = 1, Name = "England", Code = "EN" } }; var refereesList = new List <Referee>(); var mockCountryRepo = new Mock <IRepository <Country> >(); mockCountryRepo.Setup(r => r.Get(It.IsAny <int>())).Returns <int>(id => countriesList.FirstOrDefault(c => c.Id == id)); var mockRefereeRepo = new Mock <IRepository <Referee> >(); mockRefereeRepo.Setup(r => r.All()).Returns(refereesList.AsQueryable()); mockRefereeRepo.Setup(r => r.AddAsync(It.IsAny <Referee>())).Callback <Referee>(referee => refereesList.Add(new Referee { Id = 1, Name = referee.Name, Country = referee.Country })); mockRefereeRepo.Setup(r => r.Delete(It.IsAny <Referee>())).Callback <Referee>(referee => refereesList.Remove(referee)); var refereeService = new RefereeService(mockRefereeRepo.Object, mockCountryRepo.Object); var refereeViewModel = new RefereeViewModel { Name = "Michael Oliver", CountryId = 1 }; await refereeService.CreateAsync(refereeViewModel); await refereeService.DeleteAsync(1); Assert.Empty(refereeService.GetAll(false)); }