internal static void TestColorTemplateRelationships(string[] templateTokens, bool checkHybridName, TemplateRelationshipType relationshipType, BaseTemplate namedTemplate) { bool result; // Validate Test Results foreach (string token in templateTokens) { if (checkHybridName) { result = namedTemplate.FriendlyName.ContainsCurrentCulture(token); Assert.IsTrue(result, $"FriendlyName does not contain the label '{token}'."); } result = namedTemplate.TemplateRelationships.Contains(token); Assert.IsTrue(result, $"TemplateRelationships does not contain the ColorTemplate '{token}'."); result = namedTemplate.TemplateRelationships[token].RelationshipType == relationshipType; Assert.IsTrue(result, $"TemplateRelationships['{token}'].RelationshipType must be '{relationshipType}'."); } // Check for Invalid Template Relationships System.Collections.Generic.List <string> tokens = new System.Collections.Generic.List <string>(templateTokens); foreach (TemplateRelationship r in namedTemplate.TemplateRelationships) { //Assert.Equals(r.RelationshipType, relationshipType); Assert.IsTrue(r.RelationshipType == relationshipType); Assert.IsTrue(tokens.Contains(r.RelatedItem.Name)); } }
private static void TestTemplateRelationships(TemplateRelationshipCollection templateRelationships, TemplateRelationshipType relationshipType, params BaseTemplate[] relatedTemplates) { switch (relationshipType) { case TemplateRelationshipType.Comparison: Assert.AreEqual(1, templateRelationships.Count); Assert.AreEqual(relatedTemplates[0].FriendlyName, templateRelationships[0].RelatedItem.FriendlyName); Assert.AreEqual(TemplateRelationshipType.Comparison, templateRelationships[0].RelationshipType); break; case TemplateRelationshipType.TypeOf: var parentRelationships = templateRelationships.Where(tr => tr.RelationshipType == TemplateRelationshipType.TypeOf); var parentRelation = parentRelationships.FirstOrDefault(); Assert.AreEqual(1, parentRelationships.ToArray().Length); Assert.AreEqual(1, relatedTemplates.Length); Assert.AreEqual(relatedTemplates[0], parentRelation.RelatedItem); break; default: throw new System.NotImplementedException(); } }