public void CreateAmbiguousBinding() { EdmModel model = new EdmModel(); EdmComplexType c1 = new EdmComplexType("Ambiguous", "Binding"); EdmComplexType c2 = new EdmComplexType("Ambiguous", "Binding"); EdmComplexType c3 = new EdmComplexType("Ambiguous", "Binding"); model.AddElement(c1); Assert.AreEqual(c1, model.FindType("Ambiguous.Binding"), "Single item resolved"); model.AddElement(c2); model.AddElement(c3); IEdmNamedElement ambiguous = model.FindType("Ambiguous.Binding"); Assert.IsTrue(ambiguous.IsBad(), "Ambiguous binding is bad"); Assert.AreEqual(EdmErrorCode.BadAmbiguousElementBinding, ambiguous.Errors().First().ErrorCode, "Ambiguous"); c1 = null; c2 = new EdmComplexType("Ambiguous", "Binding2"); Assert.IsTrue ( model.SchemaElements.OfType <IEdmComplexType>().Count() == 3 && model.SchemaElements.OfType <IEdmComplexType>().All(n => n.FullName() == "Ambiguous.Binding"), "The model must be immutable." ); }