Esempio n. 1
0
        public ActionResult Index()
        {
            var model = new ContactOptionsViewModel
            {
                Title = Title
            };

            return(View("Index", model));
        }
        public async Task Contacts_WhenExternalIdentifierIsWhiteSpace_ReturnsViewResultWhereModelIsContactOptionsViewModelWhereExternalIdentifierIsNull()
        {
            Controller sut = CreateSut();

            ViewResult result = (ViewResult)await sut.Contacts(externalIdentifier : " ");

            ContactOptionsViewModel contactOptionsViewModel = (ContactOptionsViewModel)result.Model;

            Assert.That(contactOptionsViewModel.ExternalIdentifier, Is.Null);
        }
        public async Task StartLoadingContacts_WhenTokenWasReturnedFromTokenHelperFactory_ReturnsPartialViewResultWhereModelIsContactOptionsViewModelWhereDefaultCountriesIsNull()
        {
            Controller sut = CreateSut();

            PartialViewResult result = (PartialViewResult)await sut.StartLoadingContacts();

            ContactOptionsViewModel contactOptionsViewModel = (ContactOptionsViewModel)result.Model;

            Assert.That(contactOptionsViewModel.Countries, Is.Null);
        }
Esempio n. 4
0
        public async Task StartAddingAssociatedCompany_WhenTokenWasReturnedFromTokenHelperFactory_ReturnsPartialViewResultWhereModelIsContactOptionsViewModelWhereCountriesIsNull()
        {
            Controller sut = CreateSut();

            PartialViewResult result = (PartialViewResult)await sut.StartAddingAssociatedCompany(_fixture.Create <string>());

            ContactOptionsViewModel contactOptionsViewModel = (ContactOptionsViewModel)result.Model;

            Assert.That(contactOptionsViewModel.Countries, Is.Null);
        }
        public async Task StartLoadingContacts_WhenTokenWasReturnedFromTokenHelperFactoryAndFilterIsEmpty_ReturnsPartialViewResultWhereModelIsContactOptionsViewModelWhereFilterIsNull()
        {
            Controller sut = CreateSut();

            PartialViewResult result = (PartialViewResult)await sut.StartLoadingContacts(string.Empty);

            ContactOptionsViewModel contactOptionsViewModel = (ContactOptionsViewModel)result.Model;

            Assert.That(contactOptionsViewModel.Filter, Is.Null);
        }
        public async Task StartLoadingContacts_WhenTokenWasReturnedFromTokenHelperFactoryAndExternalIdentifierIsWhiteSpace_ReturnsPartialViewResultWhereModelIsContactOptionsViewModelWhereExternalIdentifierIsNull()
        {
            Controller sut = CreateSut();

            PartialViewResult result = (PartialViewResult)await sut.StartLoadingContacts(externalIdentifier : " ");

            ContactOptionsViewModel contactOptionsViewModel = (ContactOptionsViewModel)result.Model;

            Assert.That(contactOptionsViewModel.ExternalIdentifier, Is.Null);
        }
        public async Task StartCreatingContact_WhenTokenWasReturnedFromTokenHelperFactory_ReturnsPartialViewResultWhereModelIsContactOptionsViewModelWhereExternalIdentifierIsNull()
        {
            Controller sut = CreateSut();

            PartialViewResult result = (PartialViewResult)await sut.StartCreatingContact(_fixture.Create <string>());

            ContactOptionsViewModel contactOptionsViewModel = (ContactOptionsViewModel)result.Model;

            Assert.That(contactOptionsViewModel.ExternalIdentifier, Is.Null);
        }
        public async Task Contacts_WhenFilterIsEmpty_ReturnsViewResultWhereModelIsContactOptionsViewModelWhereFilterIsNull()
        {
            Controller sut = CreateSut();

            ViewResult result = (ViewResult)await sut.Contacts(string.Empty);

            ContactOptionsViewModel contactOptionsViewModel = (ContactOptionsViewModel)result.Model;

            Assert.That(contactOptionsViewModel.Filter, Is.Null);
        }
        public async Task StartLoadingContacts_WhenTokenWasReturnedFromTokenHelperFactoryAndExternalIdentifierIsNotNullEmptyOrWhiteSpace_ReturnsPartialViewResultWhereModelIsContactOptionsViewModelWhereExternalIdentifierIsEqualToExternalIdentifierFromArgument()
        {
            Controller sut = CreateSut();

            string            externalIdentifier = _fixture.Create <string>();
            PartialViewResult result             = (PartialViewResult)await sut.StartLoadingContacts(externalIdentifier : externalIdentifier);

            ContactOptionsViewModel contactOptionsViewModel = (ContactOptionsViewModel)result.Model;

            Assert.That(contactOptionsViewModel.ExternalIdentifier, Is.EqualTo(externalIdentifier));
        }
        public async Task StartCreatingContact_WhenTokenWasReturnedFromTokenHelperFactory_ReturnsPartialViewResultWhereModelIsContactOptionsViewModelWhereDefaultCountryCodeIsEqualToCountryCode()
        {
            Controller sut = CreateSut();

            string            countryCode = _fixture.Create <string>();
            PartialViewResult result      = (PartialViewResult)await sut.StartCreatingContact(countryCode);

            ContactOptionsViewModel contactOptionsViewModel = (ContactOptionsViewModel)result.Model;

            Assert.That(contactOptionsViewModel.DefaultCountryCode, Is.EqualTo(countryCode));
        }
        public async Task Contacts_WhenExternalIdentifierIsNotNullEmptyOrWhiteSpace_ReturnsViewResultWhereModelIsContactOptionsViewModelWhereExternalIdentifierIsEqualToFilterFromArgument()
        {
            Controller sut = CreateSut();

            string     externalIdentifier = _fixture.Create <string>();
            ViewResult result             = (ViewResult)await sut.Contacts(externalIdentifier : externalIdentifier);

            ContactOptionsViewModel contactOptionsViewModel = (ContactOptionsViewModel)result.Model;

            Assert.That(contactOptionsViewModel.ExternalIdentifier, Is.EqualTo(externalIdentifier));
        }
        public async Task Contacts_WhenCalled_ReturnsViewResultWhereModelIsContactOptionsViewModelWhereCountriesContainsViewModelForCountries()
        {
            IEnumerable <ICountry> countryCollection = _fixture.CreateMany <ICountry>(_random.Next(5, 10)).ToList();
            Controller             sut = CreateSut(countryCollection: countryCollection);

            ViewResult result = (ViewResult)await sut.Contacts();

            ContactOptionsViewModel contactOptionsViewModel = (ContactOptionsViewModel)result.Model;

            Assert.That(contactOptionsViewModel.Countries.All(countryViewModel => countryCollection.SingleOrDefault(country => string.CompareOrdinal(countryViewModel.Code, country.Code) == 0) != null), Is.True);
        }
        public async Task Contacts_WhenCalled_ReturnsViewResultWhereModelIsContactOptionsViewModelWhereDefaultCountryCodeIsEqualToCountryCodeFromClaimResolver()
        {
            string     countryCode = _fixture.Create <string>();
            Controller sut         = CreateSut(countryCode: countryCode);

            ViewResult result = (ViewResult)await sut.Contacts();

            ContactOptionsViewModel contactOptionsViewModel = (ContactOptionsViewModel)result.Model;

            Assert.That(contactOptionsViewModel.DefaultCountryCode, Is.EqualTo(countryCode));
        }
        public void SubmitTests(bool modelStateValid, ContactOption?contactOption)
        {
            //Assign
            var postModel = new ContactOptionsViewModel();

            //Setup and configure fake mapper
            var mapperCfg = new MapperConfiguration(cfg =>
            {
                cfg.AddProfile <ContactUsAutomapperProfile>();
            });

            var controller = new SelectOptionController(fakeApplicationLogger, mapperCfg.CreateMapper(), fakeSessionStorage);

            A.CallTo(() => fakeSessionStorage.Save(A <ContactUs> ._)).DoesNothing();

            if (!modelStateValid)
            {
                controller.ModelState.AddModelError(nameof(ContactOptionsViewModel.ContactOptionType), nameof(ContactOptionsViewModel.ContactOptionType));
            }

            if (contactOption != null)
            {
                postModel.ContactOptionType = contactOption.GetValueOrDefault();
            }

            //Act
            var controllerResult = controller.WithCallTo(contrl => contrl.Index(postModel));

            //Assert
            if (modelStateValid && contactOption == ContactOption.ContactAdviser)
            {
                controllerResult.ShouldRedirectTo(controller.ContactAdviserPage);
            }
            else if (modelStateValid && contactOption == ContactOption.Technical)
            {
                controllerResult.ShouldRedirectTo(controller.TechnicalFeedbackPage);
            }
            else if (modelStateValid && contactOption == ContactOption.Feedback)
            {
                controllerResult.ShouldRedirectTo(controller.GeneralFeedbackPage);
            }
            else if (modelStateValid && contactOption == null)
            {
                controllerResult.ShouldRenderDefaultView().WithModel <ContactOptionsViewModel>();
            }
            else
            {
                controllerResult.ShouldRenderDefaultView()
                .WithModel <ContactOptionsViewModel>()
                .AndModelError(nameof(ContactOptionsViewModel.ContactOptionType));
            }
        }
Esempio n. 15
0
        public async Task <IActionResult> StartLoadingContacts(string filter = null, string externalIdentifier = null)
        {
            if (await _tokenHelperFactory.GetTokenAsync <IRefreshableToken>(TokenType.MicrosoftGraphToken, HttpContext) == null)
            {
                return(Unauthorized());
            }

            ContactOptionsViewModel contactOptionsViewModel = new ContactOptionsViewModel
            {
                Filter             = string.IsNullOrWhiteSpace(filter) ? null : filter,
                ExternalIdentifier = string.IsNullOrWhiteSpace(externalIdentifier) ? null : externalIdentifier
            };

            return(PartialView("_LoadingContactsPartial", contactOptionsViewModel));
        }
Esempio n. 16
0
        public async Task <IActionResult> Contacts(string filter = null, string externalIdentifier = null)
        {
            string defaultCountryCode = _claimResolver.GetCountryCode();

            IEnumerable <CountryViewModel> countryViewModels = await GetCountryViewModels();

            ContactOptionsViewModel contactOptionsViewModel = new ContactOptionsViewModel
            {
                Filter             = string.IsNullOrWhiteSpace(filter) ? null : filter,
                ExternalIdentifier = string.IsNullOrWhiteSpace(externalIdentifier) ? null : externalIdentifier,
                DefaultCountryCode = defaultCountryCode,
                Countries          = countryViewModels?.ToList() ?? new List <CountryViewModel>(0)
            };

            return(View("Contacts", contactOptionsViewModel));
        }
        public void Dfc7630SelectOptionViewTests()
        {
            // Arrange
            var selectOptionIndex       = new _MVC_Views_SelectOption_Index_cshtml();
            var contactOptionsViewModel = new ContactOptionsViewModel
            {
                Title = nameof(ContactOptionsViewModel.Title)
            };

            // Act
            var htmlDocument = selectOptionIndex.RenderAsHtml(contactOptionsViewModel);

            // Assert
            AssertTagInnerTextValue(htmlDocument, contactOptionsViewModel.Title, "h1");
            AssertFormGroupsCounts(htmlDocument, 2);
            AssertRadioGroupsCounts(htmlDocument, 3);
        }
Esempio n. 18
0
        public async Task <IActionResult> StartAddingAssociatedCompany(string countryCode)
        {
            NullGuard.NotNullOrWhiteSpace(countryCode, nameof(countryCode));

            IRefreshableToken token = await _tokenHelperFactory.GetTokenAsync <IRefreshableToken>(TokenType.MicrosoftGraphToken, HttpContext);

            if (token == null)
            {
                return(Unauthorized());
            }

            ContactOptionsViewModel contactOptionsViewModel = new ContactOptionsViewModel
            {
                DefaultCountryCode = countryCode
            };

            return(PartialView("_AddingAssociatedCompanyPartial", contactOptionsViewModel));
        }
Esempio n. 19
0
        public ActionResult Index(ContactOptionsViewModel model)
        {
            if (ModelState.IsValid)
            {
                sessionStorage.Save(mapper.Map <ContactUs>(model));
                switch (model.ContactOptionType)
                {
                case ContactOption.Technical:
                    return(Redirect(TechnicalFeedbackPage));

                case ContactOption.ContactAdviser:
                    return(Redirect(ContactAdviserPage));

                case ContactOption.Feedback:
                    return(Redirect(GeneralFeedbackPage));

                default:
                    return(View("Index", model));
                }
            }

            model.Title = Title;
            return(View("Index", model));
        }