public void Navigation_MarkupIsCorrect() { var controller = new NavigationFieldController(); var control = new MvcWidgetProxy(); control.ControllerName = typeof(NavigationFieldController).FullName; control.Settings = new ControllerSettings(controller); var formId = ServerOperationsFeather.Forms().CreateFormWithWidget(control); var pageManager = PageManager.GetManager(); try { var template = pageManager.GetTemplates().FirstOrDefault(t => t.Name == "SemanticUI.default" && t.Title == "default"); Assert.IsNotNull(template, "Template was not found"); var pageId = FeatherServerOperations.Pages().CreatePageWithTemplate(template, "NavigationFieldValueTest", "section-header-field-value-test"); ServerOperationsFeather.Forms().AddFormControlToPage(pageId, formId); var pageContent = ServerOperationsFeather.Pages().GetPageContent(pageId); var pageName = Res.Get <FieldResources>().PageName + "1"; Assert.IsTrue(pageContent.Contains(pageName), "Form did not render navigation field pages"); } finally { Telerik.Sitefinity.TestUtilities.CommonOperations.ServerOperations.Pages().DeleteAllPages(); FormsModuleCodeSnippets.DeleteForm(formId); } }
public void Navigation_FieldIsCorrectlyInitializedOnReload() { var controller = new PageBreakController(); var control = new MvcWidgetProxy(); control.ControllerName = typeof(PageBreakController).FullName; control.Settings = new ControllerSettings(controller); var navigationController = new NavigationFieldController(); var navigationControl = new MvcWidgetProxy(); navigationControl.ControllerName = typeof(NavigationFieldController).FullName; navigationControl.Settings = new ControllerSettings(navigationController); var controls = new List <Control>() { control, navigationControl }; var formId = ServerOperationsFeather.Forms().CreateFormWithWidgets(controls); var pageManager = PageManager.GetManager(); var formsManager = FormsManager.GetManager(); try { var culture = SystemManager.CurrentContext.AppSettings.DefaultFrontendLanguage; var tempForm = formsManager.EditForm(formId, culture); formsManager.SaveChanges(); var controlInForm = tempForm.Controls .FirstOrDefault(c => c.Properties.FirstOrDefault(pr => pr.Name == "ControllerName").Value == typeof(NavigationFieldController).FullName); var zoneEditorService = new ZoneEditorService(); var parameters = new Dictionary <string, string>(); parameters["ControllerName"] = typeof(NavigationFieldController).FullName; zoneEditorService.UpdateControlState( new Telerik.Sitefinity.Web.UI.ZoneEditorWebServiceArgs() { Id = controlInForm.Id, ControlType = typeof(MvcControllerProxy).FullName, PageId = tempForm.Id, PlaceholderId = "Body", Parameters = parameters, MediaType = DesignMediaType.Form, Attributes = new Dictionary <string, string>(), CommandName = "reload", Url = "/Sitefinity/Forms/" + tempForm.Name }); formsManager.SaveChanges(); var masterForm = formsManager.Lifecycle.CheckIn(tempForm, culture); formsManager.Lifecycle.Publish(masterForm, culture); formsManager.SaveChanges(); var template = pageManager.GetTemplates().FirstOrDefault(t => t.Name == "SemanticUI.default" && t.Title == "default"); Assert.IsNotNull(template, "Template was not found"); var pageId = FeatherServerOperations.Pages().CreatePageWithTemplate(template, "NavigationFieldInitializationTest", "section-header-field-value-test"); ServerOperationsFeather.Forms().AddFormControlToPage(pageId, formId); var pageContent = ServerOperationsFeather.Pages().GetPageContent(pageId); var pageName1 = Res.Get <FieldResources>().PageName + "1"; var pageName2 = Res.Get <FieldResources>().PageName + "2"; Assert.IsTrue(pageContent.Contains(pageName1), "Form did not render navigation field pages"); Assert.IsTrue(pageContent.Contains(pageName2), "Form did not render navigation field pages"); } finally { Telerik.Sitefinity.TestUtilities.CommonOperations.ServerOperations.Pages().DeleteAllPages(); FormsModuleCodeSnippets.DeleteForm(formId); } }