public void MissingMetadata_Throws() { var fakedContext = new XrmFakedContext(); fakedContext.InitializeMetadata(typeof(CrmEarlyBound.CrmServiceContext).Assembly); fakedContext.Initialize(SupportMethods.GetCustomerTypeEntity()); fakedContext.AddExecutionMock <RetrieveEntityRequest>(req => { var entityMetadata = fakedContext.GetEntityMetadataByName(String.Empty); var response = new RetrieveEntityResponse() { Results = new ParameterCollection { { "EntityMetadata", entityMetadata } } }; return(response); }); IOrganizationService fakedService = new Client.Services.OrganizationService(new Client.CrmConnection()); // fakedContext.GetOrganizationService(); DataBuilder DataBuilder = new DataBuilder(fakedService); var ex = Assert.ThrowsException <Exception>(() => DataBuilder.AppendData(SupportMethods.GetCustomerTypeFetch())); }
public void BrokenConnection_Throws() { XrmFakedContext fakedContext = SupportMethods.SetupPrimitiveFakedService( SupportMethods.IncidentLogicalName, SupportMethods.IncidentDisplayName, SupportMethods.GetCustomerTypeEntity()); IOrganizationService fakedService = new Client.Services.OrganizationService(new Client.CrmConnection()); // fakedContext.GetOrganizationService(); DataBuilder DataBuilder = new DataBuilder(fakedService); var ex = Assert.ThrowsException <Exception>(() => DataBuilder.AppendData(SupportMethods.GetCustomerTypeFetch())); }
public void CustomerType() { // CustomerType customerid incident XrmFakedContext fakedContext = SupportMethods.SetupPrimitiveFakedService( SupportMethods.IncidentLogicalName, SupportMethods.IncidentDisplayName, SupportMethods.GetCustomerTypeEntity()); IOrganizationService fakedService = fakedContext.GetOrganizationService(); DataBuilder DataBuilder = new DataBuilder(fakedService); DataBuilder.AppendData(SupportMethods.GetCustomerTypeFetch()); Assert.AreEqual( DataBuilder.BuildDataXML().InnerXml, SupportMethods.GetCustomerTypeExpectedData()); }
public void UnsupportedTypeCode_SkipsField() { XrmFakedContext fakedContext = SupportMethods.SetupPrimitiveFakedService( SupportMethods.IncidentLogicalName, SupportMethods.IncidentDisplayName, SupportMethods.GetCustomerTypeEntity()); fakedContext.AddExecutionMock <RetrieveEntityRequest>(req => { var entityMetadata = fakedContext.GetEntityMetadataByName(SupportMethods.IncidentLogicalName); entityMetadata.DisplayName = new Label(SupportMethods.IncidentDisplayName, 1033); entityMetadata.SetSealedPropertyValue("PrimaryNameAttribute", "title"); entityMetadata.Attributes.First(a => a.LogicalName == "customerid").SetSealedPropertyValue("DisplayName", new Label("Customer", 1033)); entityMetadata.Attributes.First(a => a.LogicalName == "customerid").SetSealedPropertyValue("AttributeType", Sdk.Metadata.AttributeTypeCode.CalendarRules); entityMetadata.Attributes.First(a => a.LogicalName == "customerid").SetSealedPropertyValue("Targets", new String[] { "account", "contact" }); entityMetadata.Attributes.First(a => a.LogicalName == "incidentid").SetSealedPropertyValue("DisplayName", new Label("Case", 1033)); var response = new RetrieveEntityResponse() { Results = new ParameterCollection { { "EntityMetadata", entityMetadata } } }; return(response); }); IOrganizationService fakedService = fakedContext.GetOrganizationService(); DataBuilder DataBuilder = new DataBuilder(fakedService); DataBuilder.AppendData(SupportMethods.GetCustomerTypeFetch()); var XML = DataBuilder.BuildDataXML(); Assert.AreEqual(1, XML.SelectSingleNode("//records/record").ChildNodes.Count); Assert.AreEqual("incidentid", XML.SelectSingleNode("//records/record/field/@name").Value); }
public void InvalidAttributeTypeCode_Throws() { XrmFakedContext fakedContext = SupportMethods.SetupPrimitiveFakedService( SupportMethods.IncidentLogicalName, SupportMethods.IncidentDisplayName, SupportMethods.GetCustomerTypeEntity()); fakedContext.AddExecutionMock <RetrieveEntityRequest>(req => { var entityMetadata = fakedContext.GetEntityMetadataByName(SupportMethods.IncidentLogicalName); entityMetadata.DisplayName = new Label(SupportMethods.IncidentDisplayName, 1033); entityMetadata.SetSealedPropertyValue("PrimaryNameAttribute", "title"); entityMetadata.Attributes.First(a => a.LogicalName == "customerid").SetSealedPropertyValue("DisplayName", new Label("Customer", 1033)); entityMetadata.Attributes.First(a => a.LogicalName == "customerid").SetSealedPropertyValue("AttributeType", (Sdk.Metadata.AttributeTypeCode) 21); entityMetadata.Attributes.First(a => a.LogicalName == "customerid").SetSealedPropertyValue("Targets", new String[] { "account", "contact" }); entityMetadata.Attributes.First(a => a.LogicalName == "incidentid").SetSealedPropertyValue("DisplayName", new Label("Case", 1033)); var response = new RetrieveEntityResponse() { Results = new ParameterCollection { { "EntityMetadata", entityMetadata } } }; return(response); }); IOrganizationService fakedService = fakedContext.GetOrganizationService(); DataBuilder DataBuilder = new DataBuilder(fakedService); DataBuilder.AppendData(SupportMethods.GetCustomerTypeFetch()); var ex = Assert.ThrowsException <Exception>(() => DataBuilder.BuildSchemaXML()); Assert.AreEqual(ex.Message, "GetFieldNodeType: Unknown Field Node Type - incident:customerid - LookupType:21"); }
public void CustomerType() { // CustomerType customerid incident XrmFakedContext fakedContext = SupportMethods.SetupPrimitiveFakedService( SupportMethods.IncidentLogicalName, SupportMethods.IncidentDisplayName, SupportMethods.GetCustomerTypeEntity()); fakedContext.AddExecutionMock <RetrieveEntityRequest>(req => { var entityMetadata = fakedContext.GetEntityMetadataByName(SupportMethods.IncidentLogicalName); entityMetadata.DisplayName = new Label(SupportMethods.IncidentDisplayName, 1033); entityMetadata.SetSealedPropertyValue("PrimaryNameAttribute", "title"); entityMetadata.Attributes.First(a => a.LogicalName == "customerid").SetSealedPropertyValue("DisplayName", new Label("Customer", 1033)); entityMetadata.Attributes.First(a => a.LogicalName == "customerid").SetSealedPropertyValue("AttributeType", Sdk.Metadata.AttributeTypeCode.Customer); entityMetadata.Attributes.First(a => a.LogicalName == "customerid").SetSealedPropertyValue("Targets", new String[] { "account", "contact" }); entityMetadata.Attributes.First(a => a.LogicalName == "incidentid").SetSealedPropertyValue("DisplayName", new Label("Case", 1033)); var response = new RetrieveEntityResponse() { Results = new ParameterCollection { { "EntityMetadata", entityMetadata } } }; return(response); }); IOrganizationService fakedService = fakedContext.GetOrganizationService(); DataBuilder DataBuilder = new DataBuilder(fakedService); DataBuilder.AppendData(SupportMethods.GetCustomerTypeFetch()); Assert.AreEqual( DataBuilder.BuildSchemaXML().InnerXml, SupportMethods.GetCustomerTypeExpectedSchema()); }