public void ProvisionTaxonomyFieldRequest_Test_GetCorrectRequest_WithoutParentId() { ProvisionTaxonomyFieldRequest request = new ProvisionTaxonomyFieldRequest("site-id", "web-id", "field-id", "", Guid.Parse("1e1a939f-60b2-2000-98a6-d25d3d400a3a"), Guid.Parse("740c6a0b-85e2-48a0-a494-e0f1759d4aa7")); var requests = request.GetRequest(new IteratorIdProvider()); var actionRequests = requests.Select(r => r.Action).ToList(); var identities = requests.Select(r => r.ObjectPath).Where(id => id != null).ToList(); SetPropertyAction setTermStoreId = actionRequests[0] as SetPropertyAction; SetPropertyAction setTermSetId = actionRequests[1] as SetPropertyAction; SetPropertyAction setTargetTemplate = actionRequests[2] as SetPropertyAction; SetPropertyAction setAnchorId = actionRequests[3] as SetPropertyAction; MethodAction updateAction = actionRequests[4] as MethodAction; Identity id = identities[0]; Assert.AreEqual("SspId", setTermStoreId.Name); Assert.AreEqual(2, setTermStoreId.Id); Assert.AreEqual("1", setTermStoreId.ObjectPathId); Assert.AreEqual("1e1a939f-60b2-2000-98a6-d25d3d400a3a", setTermStoreId.SetParameter.Value.ToString()); Assert.AreEqual("TermSetId", setTermSetId.Name); Assert.AreEqual(3, setTermSetId.Id); Assert.AreEqual("1", setTermSetId.ObjectPathId); Assert.AreEqual("740c6a0b-85e2-48a0-a494-e0f1759d4aa7", setTermSetId.SetParameter.Value.ToString()); Assert.AreEqual("TargetTemplate", setTargetTemplate.Name); Assert.AreEqual(4, setTargetTemplate.Id); Assert.AreEqual("1", setTargetTemplate.ObjectPathId); Assert.AreEqual("", setTargetTemplate.SetParameter.Value.ToString()); Assert.AreEqual("AnchorId", setAnchorId.Name); Assert.AreEqual(5, setAnchorId.Id); Assert.AreEqual("1", setAnchorId.ObjectPathId); Assert.AreEqual("00000000-0000-0000-0000-000000000000", setAnchorId.SetParameter.Value.ToString()); Assert.AreEqual("Update", updateAction.Name); Assert.AreEqual(6, updateAction.Id); Assert.AreEqual("1", updateAction.ObjectPathId); Assert.AreEqual("1e1a939f-60b2-2000-98a6-d25d3d400a3a|740c6a0b-85e2-48a0-a494-e0f1759d4aa7:site:site-id:web:web-id:field:field-id", id.Name); Assert.AreEqual(1, id.Id); }
private async Task WireUpTaxonomyFieldAsync(Field field, TaxonomyFieldCreationOptions options) { string parentId = (Parent is IList) ? (Parent as IList).Id.ToString() : ""; ProvisionTaxonomyFieldRequest request = new ProvisionTaxonomyFieldRequest(PnPContext.Site.Id.ToString(), PnPContext.Web.Id.ToString(), field.Id.ToString(), parentId, options.TermStoreId, options.TermSetId); ApiCall updateCall = new ApiCall(new List <Services.Core.CSOM.Requests.IRequest <object> >() { request }) { Commit = true, }; await field.RawRequestAsync(updateCall, HttpMethod.Post).ConfigureAwait(false); }