public void ValidateKeyAnnotationElementSupportInV40() { // [EdmLib] Key, ReturnType, Schema, Principle, Dependent, OnDelete do not support annotations. - won't fixed. var expectedErrors = new EdmLibTestErrors(); this.VerifySemanticValidation(ValidationTestModelBuilder.KeyAnnotationElementSupportInV40(EdmVersion.V40), EdmVersion.V40, expectedErrors); }
public void SerializerTestModelWithInconsistentNavigationPropertyPartner() { var model = ValidationTestModelBuilder.ModelWithInconsistentNavigationPropertyPartner(); var resultCsdls = this.GetSerializerResult(model).Select(n => XElement.Parse(n)); Assert.AreEqual(1, resultCsdls.Count(), "Invalid csdl count created."); }
public void ValidateFunctionImportAnnotationElementSupportInV40() { var expectedErrors = new EdmLibTestErrors() { }; this.VerifySemanticValidation(ValidationTestModelBuilder.OperationImportAnnotationElementSupportInV40(EdmVersion.V40), EdmVersion.V40, expectedErrors); }
public void SerializerOperationParameterShouldBeInboundCsdlSchemaCompliantTest() { var edmVersions = new EdmVersion[] { EdmVersion.V40 }; foreach (var edmVersion in edmVersions) { this.BasicXsdValidationTestForSerializerOutputCsdl(ValidationTestModelBuilder.OperationParameterShouldBeInbound(), edmVersion); } }
public void ParserSimpleIdentifierTypeReferenceCsdlSchemaCompliantTest() { var edmVersions = new EdmVersion[] { EdmVersion.V40 }; foreach (var edmVersion in edmVersions) { this.BasicXsdValidationTestForParserInputCsdl(ValidationTestModelBuilder.CollectionTypeTypeRefSimpleTypeCanHaveFacets(edmVersion), edmVersion); } }
public void ValidateEntityContainerAnnotationElementSupportInV40() { var expectedErrors = new EdmLibTestErrors() { { 5, 6, EdmErrorCode.DuplicateDirectValueAnnotationFullName }, }; this.VerifySemanticValidation(ValidationTestModelBuilder.EntityContainerAnnotationElementSupportInV40(EdmVersion.V40), EdmVersion.V40, expectedErrors); }
public void ValidateAnnotationElementFullNameShouldBeUnique() { var expectedErrors = new EdmLibTestErrors() { { null, null, EdmErrorCode.DuplicateDirectValueAnnotationFullName } }; this.VerifySemanticValidation(ValidationTestModelBuilder.AnnotationElementFullNameShouldBeUnique(this.EdmVersion), expectedErrors); }
public void ParserModelWithEnumValueTerm() { var edmVersions = new EdmVersion[] { EdmVersion.V40 }; foreach (var edmVersion in edmVersions) { Assert.IsFalse(this.GetXsdValidationResults(ValidationTestModelBuilder.ModelWithEnumValueTerm(), edmVersion).Any(), "EnumType should be able to have inline vocab. annotations"); } }
public void ParserOpenTypeSupportCsdlSchemaCompliantTest() { var edmVersions = new EdmVersion[] { EdmVersion.V40 }; foreach (var edmVersion in edmVersions) { this.BasicXsdValidationTestForParserInputCsdl(ValidationTestModelBuilder.OpenTypeSupportInV40(edmVersion), edmVersion); this.BasicXsdValidationTestForParserInputCsdl(ODataTestModelBuilder.ODataTestModelWithOpenType, edmVersion); } }
public void SerializerModelWithInvalidFunctionImportReturnTypeCsdlSchemaCompliantTest() { Console.WriteLine(DateTime.Now.ToShortDateString()); var edmVersions = new EdmVersion[] { EdmVersion.V40 }; foreach (var edmVersion in edmVersions) { this.BasicXsdValidationTestForSerializerOutputCsdl(ValidationTestModelBuilder.ModelWithInvalidFunctionReturnType(), edmVersion); } }
public void SerializerModelWithAssociationEndAsInaccessibleEntityTypeCsdlSchemaCompliantTest() { var edmVersions = new EdmVersion[] { EdmVersion.V40 }; foreach (var edmVersion in edmVersions) { this.BasicXsdValidationTestForSerializerOutputCsdl(ValidationTestModelBuilder.ModelWithAssociationEndAsInaccessibleEntityType(), edmVersion); this.BasicXsdValidationTestForSerializerOutputCsdl(ValidationTestModelBuilder.ModelWithInconsistentNavigationPropertyPartner(), edmVersion); } }
public void SerializerModelWithRowTypePropertyOfTypeNoneCsdlSchemaCompliantTest() { var edmVersions = new EdmVersion[] { EdmVersion.V40 }; foreach (var edmVersion in edmVersions) { this.BasicXsdValidationTestForSerializerOutputCsdl(ValidationTestModelBuilder.ModelWithInvalidOperationReturnType(), edmVersion); this.BasicXsdValidationTestForSerializerOutputCsdl(ValidationTestModelBuilder.ModelWithInvalidOperationParameterType(), edmVersion); } }
public void ParserInvalidDecimalTypePrecisionCsdlSchemaCompliantTest() { var edmVersions = new EdmVersion[] { EdmVersion.V40 }; foreach (var edmVersion in edmVersions) { this.BasicXsdValidationTestForParserInputCsdl(ValidationTestModelBuilder.ValidDecimalTypePrecisionValue(edmVersion), edmVersion); this.BasicXsdValidationTestForParserInputCsdl(ValidationTestModelBuilder.ValidDateTimeOffsetTypePrecisionValue(edmVersion), edmVersion); this.BasicXsdValidationTestForParserInputCsdl(ValidationTestModelBuilder.ValidTimeTypePrecisionValue(edmVersion), edmVersion); } }
public void ParserComplexTypeWithBaseTypeAbstractCsdlSchemaCompliantTest() { var edmVersions = new EdmVersion[] { EdmVersion.V40 }; foreach (var edmVersion in edmVersions) { this.BasicXsdValidationTestForParserInputCsdl(ModelBuilder.ComplexTypeWithBaseType(edmVersion), edmVersion); this.BasicXsdValidationTestForParserInputCsdl(ValidationTestModelBuilder.ComplexTypeBaseTypeSupportInV11(edmVersion), edmVersion); this.BasicXsdValidationTestForParserInputCsdl(ValidationTestModelBuilder.EdmComplexTypeInvalidIsPolymorphic(edmVersion), edmVersion); this.BasicXsdValidationTestForParserInputCsdl(ValidationTestModelBuilder.ComplexTypeIsAbstractSupportInV40(edmVersion), edmVersion); } }
public void SerializerTestModelWithCircularPartner() { var model = ValidationTestModelBuilder.ModelWithCircularNavigationPartner(); var expectedErrors = new EdmLibTestErrors() { { "(EdmLibTests.StubEdm.StubEdmNavigationProperty)", EdmErrorCode.InterfaceCriticalNavigationPartnerInvalid } }; IEnumerable <EdmError> edmErrors; this.GetSerializerResult(model, out edmErrors); this.CompareErrors(expectedErrors, edmErrors); }
public void SerializerModelWithMismatchedBaseTypeCsdlSchemaCompliantTests() { var edmVersions = new EdmVersion[] { EdmVersion.V40 }; foreach (var edmVersion in edmVersions) { this.BasicXsdValidationTestForSerializerOutputCsdl(ValidationTestModelBuilder.ModelWithComplexTypeWithEntityBaseType(), edmVersion); this.BasicXsdValidationTestForParserInputCsdl(ValidationTestModelBuilder.ModelWithComplexTypeWithEntityBaseTypeCsdl(edmVersion), edmVersion); this.BasicXsdValidationTestForSerializerOutputCsdl(ValidationTestModelBuilder.ModelWithEntityTypeWithComplexBaseType(), edmVersion); this.BasicXsdValidationTestForParserInputCsdl(ValidationTestModelBuilder.ModelWithEntityTypeWithComplexBaseTypeCsdl(edmVersion), edmVersion); this.BasicXsdValidationTestForSerializerOutputCsdl(ValidationTestModelBuilder.ModelWithInvalidDependentProperties(), edmVersion); } }
// [EdmLib] [Validator] Add more version related semantic rules for annotation elements. - postponed public void ValidateAnnotationElementRelatedRulesInV12OrLower() { var expectedErrors = new EdmLibTestErrors() { // TODO: Need to update after the attached bug is fixed. }; this.VerifySemanticValidation(ValidationTestModelBuilder.OperationImportAnnotationElementSupportInV40(EdmVersion.V40), EdmVersion.V40, expectedErrors); expectedErrors = new EdmLibTestErrors() { // TODO: Need to update after the attached bug is fixed. { 5, 6, EdmErrorCode.DuplicateDirectValueAnnotationFullName } }; this.VerifySemanticValidation(ValidationTestModelBuilder.EntityContainerAnnotationElementSupportInV40(EdmVersion.V40), EdmVersion.V40, expectedErrors); }