Exemplo n.º 1
0
        public void CanAddWebPartsToForms()
        {
            var template = new ProvisioningTemplate();

            FileSystemConnector connector = new FileSystemConnector(resourceFolder + @"\..", "");

            template.Connector = connector;
            var webPart = new WebPart
            {
                Column   = 1,
                Row      = 1,
                Contents = webpartcontents,
                Title    = "Script Editor",
                Order    = 0,
                Zone     = "Main"
            };

            var myfile = new Core.Framework.Provisioning.Model.File()
            {
                Overwrite = false,
                Src       = "EditForm.aspx",
                Folder    = "SitePages/Forms"
            };

            myfile.WebParts.Add(webPart);
            template.Files.Add(myfile);

            using (var ctx = TestCommon.CreateClientContext())
            {
                var parser = new TokenParser(ctx.Web, template);
                new ObjectFiles().ProvisionObjects(ctx.Web, template, parser, new ProvisioningTemplateApplyingInformation());

                ctx.Web.EnsureProperties(w => w.ServerRelativeUrl);

                var file = ctx.Web.GetFileByServerRelativeUrl(
                    UrlUtility.Combine(ctx.Web.ServerRelativeUrl,
                                       UrlUtility.Combine("SitePages/Forms", "EditForm.aspx")));
                ctx.Load(file, f => f.Exists);
                ctx.ExecuteQueryRetry();

                // first of all do we even find the form ?
                Assert.IsTrue(file.Exists);
                var webParts = file.GetLimitedWebPartManager(PersonalizationScope.Shared).WebParts;
                ctx.Load(webParts, wp => wp.IncludeWithDefaultProperties(w => w.Id, w => w.WebPart, w => w.WebPart.Title));
                ctx.ExecuteQueryRetry();

                var webPartsArray = webParts.ToArray();
                var webPartExists = false;
                foreach (var webPartDefinition in webPartsArray)
                {
                    if (webPartDefinition.WebPart.Title == "Script Editor")
                    {
                        webPartExists = true;
                        // cleanup after ourselves if we can find the webpart...
                        webPartDefinition.DeleteWebPart();
                    }
                }
                ctx.ExecuteQueryRetry();
                Assert.IsTrue(webPartExists);
            }
        }
Exemplo n.º 2
0
        public void CanAddWebPartsToForms()
        {
            var template = new ProvisioningTemplate();

            FileSystemConnector connector = new FileSystemConnector(resourceFolder + @"\..", "");

            template.Connector = connector;
            var webPart = new WebPart
            {
                Column = 1,
                Row = 1,
                Contents = webpartcontents,
                Title = "Script Editor",
                Order = 0,
                Zone = "Main"
            };

            var myfile = new Core.Framework.Provisioning.Model.File()
            {
                Overwrite = false,
                Src = "EditForm.aspx",
                Folder = "SitePages/Forms"
            };
            myfile.WebParts.Add(webPart);
            template.Files.Add(myfile);

            using (var ctx = TestCommon.CreateClientContext())
            {
                var parser = new TokenParser(ctx.Web, template);
                new ObjectFiles().ProvisionObjects(ctx.Web, template, parser, new ProvisioningTemplateApplyingInformation());

                ctx.Web.EnsureProperties(w => w.ServerRelativeUrl);

                var file = ctx.Web.GetFileByServerRelativeUrl(
                    UrlUtility.Combine(ctx.Web.ServerRelativeUrl,
                        UrlUtility.Combine("SitePages/Forms", "EditForm.aspx")));
                ctx.Load(file, f => f.Exists);
                ctx.ExecuteQueryRetry();

                // first of all do we even find the form ?
                Assert.IsTrue(file.Exists);
                var webParts = file.GetLimitedWebPartManager(PersonalizationScope.Shared).WebParts;
                ctx.Load(webParts, wp => wp.IncludeWithDefaultProperties(w=>w.Id, w=>w.WebPart, w=>w.WebPart.Title));
                ctx.ExecuteQueryRetry();

                var webPartsArray = webParts.ToArray();
                var webPartExists = false;
                foreach (var webPartDefinition in webPartsArray)
                {
                    if (webPartDefinition.WebPart.Title == "Script Editor")
                    {
                        webPartExists = true;
                        // cleanup after ourselves if we can find the webpart... 
                        webPartDefinition.DeleteWebPart();
                    }
                   
                }
                ctx.ExecuteQueryRetry();
                Assert.IsTrue(webPartExists);
            }
        }