public void CreateAnswerRedirectsAsync() { DbContextOptions <FunemploymentDbContext> options = new DbContextOptionsBuilder <FunemploymentDbContext>() .UseInMemoryDatabase("CreateAnswerRedirect") .Options; using (FunemploymentDbContext context = new FunemploymentDbContext(options)) { TechnicalController tc = new TechnicalController(context); Player player = new Player(); player.Username = "******"; player.Location = "testLocation"; player.About = "testAbout"; Answer answer = new Answer(); CreateAnswerViewModel cavm = new CreateAnswerViewModel(); try { var x = tc.CreateAnswer(cavm); } catch (Exception ex) { Assert.True(ex is NullReferenceException); } } }
public void CreateAnswerWorks() { DbContextOptions <FunemploymentDbContext> options = new DbContextOptionsBuilder <FunemploymentDbContext>() .UseInMemoryDatabase("TechnicalndexRedirects") .Options; using (FunemploymentDbContext context = new FunemploymentDbContext(options)) { TechnicalController tc = new TechnicalController(context); Player player = new Player(); player.Username = "******"; player.Location = "testLocation"; player.About = "testAbout"; Answer answer = new Answer(); answer.Content = "testContent"; answer.BQID = 100; var x = tc.CreateAnswer(100); Assert.Equal("testContent", answer.Content); } }
public void IndexGetTest(bool isContentAuthoringSite, bool hasValidSession, ContactOption?contactOption, bool expectToBeRedirected) { //Set up A.CallTo(() => fakeWebAppContext.IsContentAuthoringSite).Returns(isContentAuthoringSite); if (hasValidSession) { if (contactOption is null) { A.CallTo(() => fakeSessionStorage.Get()).Returns(new ContactUs() { ContactUsOption = new ContactUsOption() }); } else { A.CallTo(() => fakeSessionStorage.Get()).Returns(new ContactUs() { ContactUsOption = new ContactUsOption() { ContactOptionType = (ContactOption)contactOption } }); } } else { A.CallTo(() => fakeSessionStorage.Get()).Returns(null); } var technicalController = new TechnicalController(fakeApplicationLogger, fakeMapper, fakeWebAppContext, fakeSessionStorage); //Act var indexMethodCallResult = technicalController.WithCallTo(c => c.Index()); //Assert if (expectToBeRedirected) { indexMethodCallResult.ShouldRedirectTo(technicalController.ContactOptionPage); } else { indexMethodCallResult.ShouldRenderDefaultView() .WithModel <TechnicalFeedbackViewModel>(vm => { vm.CharacterLimit.Should().Be(technicalController.CharacterLimit); vm.MessageLabel.Should().Be(technicalController.MessageLabel); vm.PageIntroduction.Should().Be(technicalController.PageIntroduction); vm.PersonalInformation.Should().Be(technicalController.PersonalInformation); vm.Title.Should().Be(technicalController.Title); vm.NextPage.Should().Be(technicalController.NextPage); }); } }
public void SubmitTests(bool validSubmission) { //Set up var technicalController = new TechnicalController(fakeApplicationLogger, fakeMapper, fakeWebAppContext, fakeSessionStorage); var technicalFeedbackViewModel = new TechnicalFeedbackViewModel() { Message = "Dummy message" }; var dummyErrorKey = "dummyErrorKey"; //if its not valid fake an error if (!validSubmission) { technicalController.ModelState.AddModelError(dummyErrorKey, "dummyErrorMessage"); } A.CallTo(() => fakeSessionStorage.Get()).Returns(new ContactUs()); A.CallTo(() => fakeMapper.Map(A <TechnicalFeedbackViewModel> ._, A <ContactUs> ._)).Returns(new ContactUs()); A.CallTo(() => fakeSessionStorage.Save(A <ContactUs> ._)).DoesNothing(); //Act var indexMethodCallResult = technicalController.WithCallTo(c => c.Index(technicalFeedbackViewModel)); //Assert if (!validSubmission) { indexMethodCallResult.ShouldRenderDefaultView() .WithModel <TechnicalFeedbackViewModel>(vm => { vm.CharacterLimit.Should().Be(technicalController.CharacterLimit); vm.MessageLabel.Should().Be(technicalController.MessageLabel); vm.PageIntroduction.Should().Be(technicalController.PageIntroduction); vm.PersonalInformation.Should().Be(technicalController.PersonalInformation); vm.Title.Should().Be(technicalController.Title); vm.NextPage.Should().Be(technicalController.NextPage); }).AndModelError(dummyErrorKey); } else { indexMethodCallResult.ShouldRedirectTo(technicalController.NextPage); } }
public void TechnicalGetONeWorks() { DbContextOptions <FunemploymentDbContext> options = new DbContextOptionsBuilder <FunemploymentDbContext>() .UseInMemoryDatabase("TechnicalGetOne") .Options; using (FunemploymentDbContext context = new FunemploymentDbContext(options)) { TechnicalController tc = new TechnicalController(context); Player player = new Player(); player.Username = "******"; player.Location = "testLocation"; player.About = "testAbout"; var x = tc.GetOneTQ(null); Assert.IsType <NoContentResult>(x.Result); } }
public async System.Threading.Tasks.Task TechnicalIndexWorksAsync() { DbContextOptions <FunemploymentDbContext> options = new DbContextOptionsBuilder <FunemploymentDbContext>() .UseInMemoryDatabase("TechnicalIndexRedirects") .Options; using (FunemploymentDbContext context = new FunemploymentDbContext(options)) { TechnicalController tc = new TechnicalController(context); Player player = new Player(); player.Username = "******"; player.Location = "testLocation"; player.About = "testAbout"; var x = tc.Index(); var y = await OneBQViewModel.FromIDAsync(1, context); Assert.NotEmpty(y.behaviorQuestion.Content); Assert.IsType <ViewResult>(x.Result); } }