Example #1
0
 public void CanParseFile()
 {
     using (var xsdStream = TestFilesFactory.GetStreamForTestFile(_testFile))
     {
         var schemaParser = new XmlSchemaParser(xsdStream);
         var parsedFile   = schemaParser.GetSchema();
         Assert.NotNull(parsedFile);
     }
 }
Example #2
0
 private XmlSchema ParseSchema()
 {
     using (var xsdStream = TestFilesFactory.GetStreamForTestFile(_testFile))
     {
         var schemaParser = new XmlSchemaParser(xsdStream);
         var parsedFile   = schemaParser.GetSchema();
         return(parsedFile);
     }
 }
        public void ThrowsExceptionDueToInvalidSchema()
        {
            // A simpleContent element may not have elements defined within itself
            var xsdStream    = TestFilesFactory.GetStreamForTestFile(InvalidParserTestFile.SchemaWithComplexTypeWithSimpleContentButAlsoElementDefinition);
            var schemaParser = new XmlSchemaParser(xsdStream);

            Assert.Throws <InvalidDataException>(() =>
            {
                // ReSharper disable once UnusedVariable
                var parsedFile = schemaParser.GetSchema();
            });
        }
 public void InvalidDataExceptionWhenNoRootElementDefinedInSchema()
 {
     using (var stream = TestFilesFactory.GetStreamForTestFile(InvalidParserTestFile.SchemaWithoutRootElement))
     {
         Assert.Throws <InvalidDataException>(() =>
         {
             var schemaParser = new XmlSchemaParser(stream);
             // ReSharper disable once UnusedVariable
             var parsedSchema = schemaParser.GetSchema();
         });
     }
 }
Example #5
0
        /// <summary>
        ///     Deseriliazes the specified XML element to its corresponding
        ///     <seealso cref="EntityMetadata"/> representation.
        /// </summary>
        /// <param name="entity">The `entity` element to be deserialized.</param>
        private static EntityMetadata ParseEntity(XElement entity)
        {
            var name            = entity.Attribute(XmlMetadataSchema.EntityAttributeName).Value;
            var idAttributeName = entity.Attribute(XmlMetadataSchema.EntityAttributeIdAttribute).Value;
            var whereClause     = entity.Attribute(XmlMetadataSchema.EntityAttributeWhereClause).ValueOrDefault((string)null);
            var parentEntity    = entity.Attribute(XmlMetadataSchema.EntityAttributeParentEntity).ValueOrDefault((string)null);
            var associations    = XmlAssociationsParser.Parse(entity);

            return(new EntityMetadata(name,
                                      XmlSchemaParser.Parse(name, entity, idAttributeName, associations.Item2, whereClause, parentEntity),
                                      associations.Item1,
                                      XmlConnectorParametersParser.Parse(entity)
                                      ));
        }
Example #6
0
        private ApiObject ParseXmlSchema(string key, string schema, IDictionary <string, ApiObject> objects, string targetNamespace, IDictionary <string, ApiObject> otherObjects, IDictionary <string, ApiObject> schemaObjects)
        {
            if (objects.ContainsKey(key))
            {
                return(null);
            }

            var xmlSchemaParser = new XmlSchemaParser();
            var obj             = xmlSchemaParser.Parse(key, schema, objects, targetNamespace);

            if (obj != null && !objects.ContainsKey(key) && !UniquenessHelper.HasSameProperties(obj, objects, otherObjects, schemaObjects))
            {
                objects.Add(key, obj);         // to associate that key with the main XML Schema object
            }
            return(obj);
        }
 public void SetUp()
 {
     parser = new XmlSchemaParser();
 }