public void Controller_PostIndex_RaisesBeforeAction()
        {
            bool beforeActionRisen = false;
            SitefinityEventHandler<BeforeFormActionEvent> beforeActionHandler = (BeforeFormActionEvent @event) =>
            {
                beforeActionRisen = true;
            };

            try
            {
                EventHub.Subscribe<BeforeFormActionEvent>(beforeActionHandler);

                var model = new FormModel();
                model.FormId = FormEventsTests.formId;

                var formController = new FormController();
                formController.Model = model;

                var values = new NameValueCollection();
                values.Add(FormEventsTests.FieldName, "text");
                formController.Index(new System.Web.Mvc.FormCollection(values));

                Assert.IsTrue(beforeActionRisen, "Before Form Action event was not risen.");
            }
            finally
            {
                EventHub.Unsubscribe<BeforeFormActionEvent>(beforeActionHandler);
            }
        }
        public void AddFormControlToPage(Guid pageId, Guid formId, string formName = "TestForm", string placeholder = "Contentplaceholder1")
        {
            var mvcProxy = new MvcControllerProxy();
            mvcProxy.ControllerName = typeof(FormController).FullName;
            var controller = new FormController();

            controller.Model.FormId = formId;
            controller.Model.ViewMode = FormViewMode.Write;

            mvcProxy.Settings = new ControllerSettings(controller);

            PageContentGenerator.AddControlToPage(pageId, mvcProxy, formName, placeholder);
        }