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

            await this.aboutService.EditAsync(faqEditViewModel);

            return(this.RedirectToAction("GetAll", "About", new { area = "Administration" }));
        }
示例#2
0
        public async Task CheckIfEditingFaqEntryReturnsNullReferenceException()
        {
            this.SeedDatabase();

            var faqEditViewModel = new FaqEditViewModel
            {
                Id = 3,
            };

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

            Assert.Equal(string.Format(ExceptionMessages.FaqNotFound, faqEditViewModel.Id), exception.Message);
        }
示例#3
0
        public async Task EditAsync(FaqEditViewModel faqEditViewModel)
        {
            var faq = await this.faqEntriesRepository.All().FirstOrDefaultAsync(fe => fe.Id == faqEditViewModel.Id);

            if (faq == null)
            {
                throw new NullReferenceException(
                          string.Format(ExceptionMessages.FaqNotFound, faqEditViewModel.Id));
            }

            faq.Answer   = faqEditViewModel.Answer;
            faq.Question = faqEditViewModel.Question;

            this.faqEntriesRepository.Update(faq);
            await this.faqEntriesRepository.SaveChangesAsync();
        }
示例#4
0
        public async Task CheckIfEditingFaqEntryWorksCorrectly()
        {
            this.SeedDatabase();

            var faqEditViewModel = new FaqEditViewModel
            {
                Id       = this.firstFaqEntry.Id,
                Answer   = "Changed Answer",
                Question = "Changed Question",
            };

            await this.aboutService.EditAsync(faqEditViewModel);

            Assert.Equal(faqEditViewModel.Answer, this.firstFaqEntry.Answer);
            Assert.Equal(faqEditViewModel.Question, this.firstFaqEntry.Question);
        }