public async Task <IActionResult> Edit(PrivacyEditViewModel privacyEditViewModel)
        {
            if (!this.ModelState.IsValid)
            {
                return(this.View(privacyEditViewModel));
            }

            await this.privacyService.EditAsync(privacyEditViewModel);

            return(this.RedirectToAction("Privacy", "Home", new { area = string.Empty }));
        }
        public async Task CheckIfEditingPrivacyReturnsNullReferenceException()
        {
            this.SeedDatabase();

            var privacyEditViewModel = new PrivacyEditViewModel
            {
                Id = 3,
            };

            var exception = await Assert
                            .ThrowsAsync <NullReferenceException>(async() => await this.privacyService.EditAsync(privacyEditViewModel));

            Assert.Equal(string.Format(ExceptionMessages.PrivacyNotFound, privacyEditViewModel.Id), exception.Message);
        }
        public async Task CheckIfEditingPrivacyWorksCorrectly()
        {
            this.SeedDatabase();

            var privacyEditViewModel = new PrivacyEditViewModel
            {
                Id          = this.firstPrivacy.Id,
                PageContent = "Changed page content of privacy",
            };

            await this.privacyService.EditAsync(privacyEditViewModel);

            Assert.Equal(privacyEditViewModel.PageContent, this.firstPrivacy.PageContent);
        }
Ejemplo n.º 4
0
        public async Task EditAsync(PrivacyEditViewModel privacyEditViewModel)
        {
            var privacy = await this.privacyRepository.All().FirstOrDefaultAsync(p => p.Id == privacyEditViewModel.Id);

            if (privacy == null)
            {
                throw new NullReferenceException(
                          string.Format(ExceptionMessages.PrivacyNotFound, privacyEditViewModel.Id));
            }

            privacy.PageContent = privacyEditViewModel.PageContent;

            this.privacyRepository.Update(privacy);
            await this.privacyRepository.SaveChangesAsync();
        }