| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102 |
- //
- // System.Xml.XmlSchemaAssertion.cs
- //
- // Author:
- // Atsushi Enomoto <[email protected]>
- //
- // (C) 2004 Atsushi Enomoto
- //
- using System;
- using System.IO;
- using System.Xml;
- using System.Xml.Schema;
- using NUnit.Framework;
- namespace MonoTests.System.Xml
- {
- public class XmlSchemaAssertion
- {
- public static XmlSchema GetSchema (string path)
- {
- XmlTextReader reader = new XmlTextReader (path);
- XmlSchema schema = XmlSchema.Read (reader, null);
- reader.Close ();
- return schema;
- }
- public static XmlQualifiedName QName (string name, string ns)
- {
- return new XmlQualifiedName (name, ns);
- }
- public static void AssertElement (XmlSchemaElement element,
- string name, XmlQualifiedName refName, string id,
- XmlQualifiedName schemaTypeName, XmlSchemaType schemaType)
- {
- Assert.IsNotNull (element);
- Assert.AreEqual (name, element.Name);
- Assert.AreEqual (refName, element.RefName);
- Assert.AreEqual (id, element.Id);
- Assert.AreEqual (schemaTypeName, element.SchemaTypeName);
- Assert.AreEqual (schemaType, element.SchemaType);
- }
- public static void AssertElementEx (XmlSchemaElement element,
- XmlSchemaDerivationMethod block, XmlSchemaDerivationMethod final,
- string defaultValue, string fixedValue,
- XmlSchemaForm form, bool isAbstract, bool isNillable,
- XmlQualifiedName substGroup)
- {
- Assert.IsNotNull (element);
- Assert.AreEqual (block, element.Block);
- Assert.AreEqual (final, element.Final);
- Assert.AreEqual (defaultValue, element.DefaultValue);
- Assert.AreEqual (fixedValue, element.FixedValue);
- Assert.AreEqual (form, element.Form);
- Assert.AreEqual (isAbstract, element.IsAbstract);
- Assert.AreEqual (isNillable, element.IsNillable);
- Assert.AreEqual (substGroup, element.SubstitutionGroup);
- }
- public static void AssertCompiledComplexType (XmlSchemaComplexType cType,
- XmlQualifiedName name,
- int attributesCount, int attributeUsesCount,
- bool existsAny, Type contentModelType,
- bool hasContentTypeParticle,
- XmlSchemaContentType contentType)
- {
- Assert.IsNotNull (cType);
- Assert.AreEqual (name.Name, cType.Name);
- Assert.AreEqual (name, cType.QualifiedName);
- Assert.AreEqual (attributesCount, cType.Attributes.Count);
- Assert.AreEqual (attributeUsesCount, cType.AttributeUses.Count);
- Assert.IsTrue (existsAny == (cType.AttributeWildcard != null));
- if (contentModelType == null)
- Assert.IsNull (cType.ContentModel);
- else
- Assert.AreEqual (contentModelType, cType.ContentModel.GetType ());
- Assert.AreEqual (hasContentTypeParticle, cType.ContentTypeParticle != null);
- Assert.AreEqual (contentType, cType.ContentType);
- }
- public static void AssertCompiledComplexContentExtension (XmlSchemaComplexContentExtension xccx,
- int attributeCount, bool hasAnyAttribute, XmlQualifiedName baseTypeName)
- {
- Assert.IsNotNull (xccx);
- Assert.AreEqual (attributeCount, xccx.Attributes.Count);
- Assert.AreEqual (hasAnyAttribute, xccx.AnyAttribute != null);
- Assert.AreEqual (baseTypeName, xccx.BaseTypeName);
- Assert.IsNotNull (xccx.Particle);
- }
- public static void AssertCompiledElement (XmlSchemaElement element,
- XmlQualifiedName name, object elementType)
- {
- Assert.IsNotNull (element);
- Assert.AreEqual (name, element.QualifiedName);
- Assert.AreEqual (elementType, element.ElementType);
- }
- }
- }
|