Exemplo n.º 1
0
        public async Task Updates_the_model()
        {
            var resource = _resourceBuilder.Build();

            StubModelLoader();
            var response = Substitute.For <IResponse>();

            _modelSaver.Save(_currentSupplyModel).Returns(response);

            SetupStubbedSwitch();

            response.SwitchUrl.Returns("switch-uri");

            var viewModel = new CurrentSupplyViewModel
            {
                CurrentSupplyUrl        = Uri,
                IsElectricityComparison = true,
                IsGasComparison         = false
            };

            await _sut.Index(viewModel);

            Assert.That(resource.DataTemplate.GetItem("includedFuels", "compareGas").Data, Is.EqualTo(false.ToString()));
            Assert.That(resource.DataTemplate.GetItem("includedFuels", "compareElec").Data, Is.EqualTo(true.ToString()));
        }
Exemplo n.º 2
0
        public async Task Post_with_any_errors_returns_errors()
        {
            _resourceBuilder.WithError("some-error");

            StubModelLoader();

            _modelSaver
            .Save(_currentSupplyModel)
            .Returns(new Response(new ResourceBuilder().WithError("some-error").Build()));

            var requestViewModel = new CurrentSupplyViewModel {
                CurrentSupplyUrl = Uri
            };
            var result = (ViewResult)await _sut.Index(requestViewModel);

            var responseViewModel = (CurrentSupplyViewModel)result.Model;

            var error = responseViewModel.Errors.Single();

            Assert.That(error, Is.EqualTo("some-error"));
        }
Exemplo n.º 3
0
        public async Task Redirects_to_page(bool isProRata, string expectedControllerName, string expectedUri)
        {
            StubModelLoader();
            var response = Substitute.For <IResponse>();

            _modelSaver.Save(_currentSupplyModel).Returns(response);

            response.SwitchUrl.Returns("switch-uri");
            response.GetNextUrl().Returns("next-uri");

            SetupStubbedSwitch(isProRata);

            var viewModel = new CurrentSupplyViewModel
            {
                CurrentSupplyUrl = Uri
            };

            var result = (RedirectToActionResult)await _sut.Index(viewModel);

            Assert.That(result.ActionName, Is.EqualTo("Index"));
            Assert.That(result.ControllerName, Is.EqualTo(expectedControllerName));
            Assert.That(result.RouteValues["uri"], Is.EqualTo(expectedUri));
        }