public void CanCreateEntities() { using (var ctx = TestCommon.CreateClientContext()) { var template = new ProvisioningTemplate(); template = new ObjectListInstance().CreateEntities(ctx.Web, template, null); Assert.IsTrue(template.Lists.Any()); } }
public void CanCreateEntities() { using (var ctx = TestCommon.CreateClientContext()) { // Load the base template which will be used for the comparison work var creationInfo = new ProvisioningTemplateCreationInformation(ctx.Web) { BaseTemplate = ctx.Web.GetBaseTemplate() }; var template = new ProvisioningTemplate(); template = new ObjectListInstance().ExtractObjects(ctx.Web, template, creationInfo); Assert.IsTrue(template.Lists.Any()); } }
public void CanProvisionObjects() { var template = new ProvisioningTemplate(); var listInstance = new Core.Framework.Provisioning.Model.ListInstance(); listInstance.Url = string.Format("lists/{0}", listName); listInstance.Title = listName; listInstance.TemplateType = (int)ListTemplateType.GenericList; Dictionary <string, string> dataValues = new Dictionary <string, string>(); dataValues.Add("Title", "Test"); DataRow dataRow = new DataRow(dataValues); listInstance.DataRows.Add(dataRow); template.Lists.Add(listInstance); using (var ctx = TestCommon.CreateClientContext()) { var parser = new TokenParser(ctx.Web, template); // Create the List parser = new ObjectListInstance().ProvisionObjects(ctx.Web, template, parser, new ProvisioningTemplateApplyingInformation()); // Load DataRows new ObjectListInstanceDataRows().ProvisionObjects(ctx.Web, template, parser, new ProvisioningTemplateApplyingInformation()); var list = ctx.Web.GetListByUrl(listInstance.Url); Assert.IsNotNull(list); var items = list.GetItems(CamlQuery.CreateAllItemsQuery()); ctx.Load(items, itms => itms.Include(item => item["Title"])); ctx.ExecuteQueryRetry(); Assert.IsTrue(items.Count == 1); Assert.IsTrue(items[0]["Title"].ToString() == "Test"); } }
public void ObjectListInstance_ProvisionObjects() { ObjectListInstance handler = new ObjectListInstance(FieldAndListProvisioningStepHelper.Step.ListAndStandardFields); ProvisioningTemplate template = new ProvisioningTemplate(); string listName = "PnP Unit Test List"; var listInstance = new ListInstance { Url = string.Format("lists/{0}", listName), Title = listName, TemplateType = (int)ListTemplateType.GenericList }; listInstance.FieldRefs.Add(new FieldRef() { Id = new Guid("23f27201-bee3-471e-b2e7-b64fd8b7ca38") }); template.Lists.Add(listInstance); using (var ctx = TestCommon.CreateTestClientContext(false)) { TokenParser parser = new TokenParser(ctx.Web, template); handler.ProvisionObjects(ctx.Web, template, parser, null); } }
public void CanProvisionObjects() { if (TestCommon.AppOnlyTesting()) { Assert.Inconclusive("Taxonomy tests are not supported when testing using app-only"); } var template = new ProvisioningTemplate(); var listInstance = new Core.Framework.Provisioning.Model.ListInstance(); listInstance.Url = string.Format("lists/{0}", listName); listInstance.Title = listName; listInstance.TemplateType = (int)ListTemplateType.GenericList; listInstance.FieldRefs.Add(new FieldRef() { Id = new Guid("23f27201-bee3-471e-b2e7-b64fd8b7ca38") }); using (var ctx = TestCommon.CreateClientContext()) { //Create term var taxSession = TaxonomySession.GetTaxonomySession(ctx); var termStore = taxSession.GetDefaultSiteCollectionTermStore(); // Termgroup termGroupId = Guid.NewGuid(); var termGroup = termStore.CreateGroup("Test_Group_" + DateTime.Now.ToFileTime(), termGroupId); ctx.Load(termGroup); var termSet = termGroup.CreateTermSet("Test_Termset_" + DateTime.Now.ToFileTime(), Guid.NewGuid(), 1033); ctx.Load(termSet); Guid termId = Guid.NewGuid(); string termName = "Test_Term_" + DateTime.Now.ToFileTime(); termSet.CreateTerm(termName, 1033, termId); Dictionary <string, string> dataValues = new Dictionary <string, string>(); dataValues.Add("Title", "Test"); dataValues.Add("TaxKeyword", $"{termName}|{termId.ToString()}"); DataRow dataRow = new DataRow(dataValues); listInstance.DataRows.Add(dataRow); template.Lists.Add(listInstance); var parser = new TokenParser(ctx.Web, template); // Create the List parser = new ObjectListInstance().ProvisionObjects(ctx.Web, template, parser, new ProvisioningTemplateApplyingInformation()); // Load DataRows new ObjectListInstanceDataRows().ProvisionObjects(ctx.Web, template, parser, new ProvisioningTemplateApplyingInformation()); var list = ctx.Web.GetListByUrl(listInstance.Url); Assert.IsNotNull(list); var items = list.GetItems(CamlQuery.CreateAllItemsQuery()); ctx.Load(items, itms => itms.Include(item => item["Title"], i => i["TaxKeyword"])); ctx.ExecuteQueryRetry(); Assert.IsTrue(items.Count == 1); Assert.IsTrue(items[0]["Title"].ToString() == "Test"); //Validate taxonomy field data var value = items[0]["TaxKeyword"] as TaxonomyFieldValueCollection; Assert.IsNotNull(value); Assert.IsTrue(value[0].WssId > 0, "Term WSS ID not set correctly"); Assert.AreEqual(termName, value[0].Label, "Term label not set correctly"); Assert.AreEqual(termId.ToString(), value[0].TermGuid, "Term GUID not set correctly"); } }