public void Valid_request_returns_RedirectToUmbracoPageResult()
        {
            var model = new PersonalDetailsFormData();

            using (var controller = CreateController())
            {
                var result = controller.UpdatePersonalDetails(model);

                Assert.IsType <RedirectToUmbracoPageResult>(result);
            }
        }
        public void Valid_request_sets_TempData_for_view()
        {
            var model = new PersonalDetailsFormData();

            using (var controller = CreateController())
            {
                var result = controller.UpdatePersonalDetails(model);

                Assert.Equal(true, controller.TempData["Success"]);
            }
        }
        public void Invalid_model_returns_UmbracoPageResult()
        {
            var model = new PersonalDetailsFormData();

            using (var controller = CreateController())
            {
                controller.ModelState.AddModelError("Name", "Name is required");
                var result = controller.UpdatePersonalDetails(model);

                Assert.IsType <UmbracoPageResult>(result);
            }
        }
        public void Invalid_model_does_not_save_or_set_TempData()
        {
            var model = new PersonalDetailsFormData();

            using (var controller = CreateController())
            {
                controller.ModelState.AddModelError("Name", "Name is required");
                var result = controller.UpdatePersonalDetails(model);

                base.MemberService.Verify(x => x.Save(_currentMember.Object, true), Times.Never);
                Assert.False(controller.TempData.ContainsKey("Success"));
            }
        }
        public void Valid_request_logs_with_original_member_name()
        {
            var model = new PersonalDetailsFormData {
                Name = "Requested name"
            };

            using (var controller = CreateController())
            {
                var result = controller.UpdatePersonalDetails(model);

                _logger.Verify(x => x.Info(typeof(PersonalDetailsSurfaceController), LoggingTemplates.MemberPersonalDetailsUpdated, _currentMember.Object.Name, _currentMember.Object.Key, typeof(PersonalDetailsSurfaceController), nameof(PersonalDetailsSurfaceController.UpdatePersonalDetails)), Times.Once);
            }
        }
        public void Valid_request_updates_name_from_model_and_saves()
        {
            var model = new PersonalDetailsFormData {
                Name = "Requested name"
            };

            using (var controller = CreateController())
            {
                var result = controller.UpdatePersonalDetails(model);

                _currentMember.VerifySet(x => x.Name = model.Name, Times.Once);
                base.MemberService.Verify(x => x.Save(_currentMember.Object, true), Times.Once);
            }
        }
Ejemplo n.º 7
0
        public override void Execute()
        {
            #line 8 "..\..\Views\PersonalDetails.cshtml"

            Html.EnableClientValidation();
            Html.EnableUnobtrusiveJavaScript();
            Html.RequiresJs("~/scripts/jquery.validate.min.js");
            Html.RequiresJs("~/scripts/jquery.validate.unobtrusive.min.js");


            #line default
            #line hidden
            WriteLiteral("\r\n<div");

            WriteLiteral(" class=\"container-xl\"");

            WriteLiteral(">\r\n    <h1>");


            #line 15 "..\..\Views\PersonalDetails.cshtml"
            Write(Model.Name);


            #line default
            #line hidden
            WriteLiteral("</h1>\r\n\r\n");


            #line 17 "..\..\Views\PersonalDetails.cshtml"


            #line default
            #line hidden

            #line 17 "..\..\Views\PersonalDetails.cshtml"
            if (User.Identity.IsAuthenticated)
            {
                if (TempData["Success"] == null)
                {
                    using (Html.BeginUmbracoForm <PersonalDetailsSurfaceController>("UpdatePersonalDetails"))
                    {
            #line default
            #line hidden

            #line 23 "..\..\Views\PersonalDetails.cshtml"
                        Write(Html.AntiForgeryToken());


            #line default
            #line hidden

            #line 23 "..\..\Views\PersonalDetails.cshtml"

                        var formData = new PersonalDetailsFormData();
                        formData.Name = Members.GetCurrentMember().Name;



            #line default
            #line hidden
                        WriteLiteral("                <div");

                        WriteLiteral(" class=\"form-group\"");

                        WriteLiteral(">\r\n");

                        WriteLiteral("                    ");


            #line 28 "..\..\Views\PersonalDetails.cshtml"
                        Write(Html.LabelFor(m => formData.Name));


            #line default
            #line hidden
                        WriteLiteral("\r\n");

                        WriteLiteral("                    ");


            #line 29 "..\..\Views\PersonalDetails.cshtml"
                        Write(Html.TextBoxFor(m => formData.Name, new { @class = "form-control", required = "required", aria_describedby = "form-name", autocomplete = "name" }));


            #line default
            #line hidden
                        WriteLiteral("\r\n");

                        WriteLiteral("                    ");


            #line 30 "..\..\Views\PersonalDetails.cshtml"
                        Write(Html.ValidationMessageFor(m => formData.Name, null, new { id = "form-name" }));


            #line default
            #line hidden
                        WriteLiteral("\r\n                </div>\r\n");


            #line 32 "..\..\Views\PersonalDetails.cshtml"



            #line default
            #line hidden
                        WriteLiteral("                <button");

                        WriteLiteral(" class=\"btn btn-primary\"");

                        WriteLiteral(">");


            #line 33 "..\..\Views\PersonalDetails.cshtml"
                        Write(Model.Value("saveButton"));


            #line default
            #line hidden
                        WriteLiteral("</button>\r\n");


            #line 34 "..\..\Views\PersonalDetails.cshtml"
                    }
                }
                else
                {
            #line default
            #line hidden

            #line 38 "..\..\Views\PersonalDetails.cshtml"
                    Write(Html.ProtectEmailAddresses(Model.Value <IHtmlString>("saved")));


            #line default
            #line hidden

            #line 38 "..\..\Views\PersonalDetails.cshtml"
                }
            }
            else
            {
            #line default
            #line hidden

            #line 43 "..\..\Views\PersonalDetails.cshtml"
                Write(Html.Partial("_Login"));


            #line default
            #line hidden

            #line 43 "..\..\Views\PersonalDetails.cshtml"
            }


            #line default
            #line hidden
            WriteLiteral("</div>");
        }