Beispiel #1
0
        public async Task UpdateNotExistingReferee()
        {
            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);

            var updatedViewModel = new RefereeViewModel
            {
                Id        = 1,
                Name      = "Mike Dean",
                CountryId = 1
            };

            await Assert.ThrowsAsync <Exception>(() => refereeService.UpdateAsync(updatedViewModel));
        }
Beispiel #2
0
        public async Task SaveAndUpdateRefereeWithNameOfAnotherdExistingReferee()
        {
            var countriesList = new List <Country> {
                new Country {
                    Id = 1, Name = "England", Code = "EN"
                }
            };
            var refereesList = new List <Referee>();
            var id           = 1;

            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      = id++,
                Name    = referee.Name,
                Country = referee.Country
            }));

            var refereeService = new RefereeService(mockRefereeRepo.Object, mockCountryRepo.Object);

            var firstRefereeViewModel = new RefereeViewModel
            {
                Name      = "Michael Oliver",
                CountryId = 1
            };

            var secondRefereeViewModel = new RefereeViewModel
            {
                Name      = "Mike Dean",
                CountryId = 1
            };

            await refereeService.CreateAsync(firstRefereeViewModel);

            await refereeService.CreateAsync(secondRefereeViewModel);

            var secondUpdatedViewModel = new RefereeViewModel
            {
                Id        = 2,
                Name      = "Michael Oliver",
                CountryId = 1
            };

            await Assert.ThrowsAsync <Exception>(() => refereeService.UpdateAsync(secondUpdatedViewModel));
        }
Beispiel #3
0
        public async Task SaveAndUpdateReferee()
        {
            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
            }));

            var refereeService = new RefereeService(mockRefereeRepo.Object, mockCountryRepo.Object);

            var refereeViewModel = new RefereeViewModel
            {
                Name      = "Mike Dean",
                CountryId = 1
            };

            await refereeService.CreateAsync(refereeViewModel);

            var updatedViewModel = new RefereeViewModel
            {
                Id        = 1,
                Name      = "Michael Oliver",
                CountryId = 1
            };

            await refereeService.UpdateAsync(updatedViewModel);

            var savedReferee = refereeService.Get(1);

            Assert.Equal(1, savedReferee.Id);
            Assert.Equal("Michael Oliver", savedReferee.Name);
        }