Ejemplo n.º 1
0
        public void WriteAttributeExtensions_Invoke_ReturnsExpected(string version)
        {
            var document = new InlineCategoriesDocumentSubclass();

            CompareHelper.AssertEqualWriteOutput("", writer => document.WriteAttributeExtensionsEntryPoint(writer, version));

            document.AttributeExtensions.Add(new XmlQualifiedName("name1"), "value");
            document.AttributeExtensions.Add(new XmlQualifiedName("name2", "namespace"), "");
            document.AttributeExtensions.Add(new XmlQualifiedName("name3"), null);
            CompareHelper.AssertEqualWriteOutput(@"name1=""value"" d0p1:name2="""" name3=""""", writer => document.WriteAttributeExtensionsEntryPoint(writer, "version"));
        }
Ejemplo n.º 2
0
        public void CreateCategory_Invoke_ReturnsExpected()
        {
            var document = new InlineCategoriesDocumentSubclass();
            SyndicationCategory category = document.CreateCategoryEntryPoint();

            Assert.Empty(category.AttributeExtensions);
            Assert.Empty(category.ElementExtensions);
            Assert.Null(category.Name);
            Assert.Null(category.Scheme);
            Assert.Null(category.Label);
        }
Ejemplo n.º 3
0
        public void WriteElementExtensions_Invoke_ReturnsExpected(string version)
        {
            var document = new InlineCategoriesDocumentSubclass();

            CompareHelper.AssertEqualWriteOutput("", writer => document.WriteElementExtensionsEntryPoint(writer, version));

            document.ElementExtensions.Add(new ExtensionObject {
                Value = 10
            });
            document.ElementExtensions.Add(new ExtensionObject {
                Value = 11
            });
            CompareHelper.AssertEqualWriteOutput(
                @"<InlineCategoriesDocumentTests.ExtensionObject xmlns:i=""http://www.w3.org/2001/XMLSchema-instance"" xmlns=""http://schemas.datacontract.org/2004/07/System.ServiceModel.Syndication.Tests"">
    <Value>10</Value>
</InlineCategoriesDocumentTests.ExtensionObject>
<InlineCategoriesDocumentTests.ExtensionObject xmlns:i=""http://www.w3.org/2001/XMLSchema-instance"" xmlns=""http://schemas.datacontract.org/2004/07/System.ServiceModel.Syndication.Tests"">
    <Value>11</Value>
</InlineCategoriesDocumentTests.ExtensionObject>", writer => document.WriteElementExtensionsEntryPoint(writer, version));
        }
        private static void VerifyRead <T>(string xmlString, Action <T> verifyAction) where T : CategoriesDocument
        {
            // ReadFrom.
            using (var stringReader = new StringReader(xmlString))
                using (XmlReader reader = XmlReader.Create(stringReader))
                {
                    var formatter = new AtomPub10CategoriesDocumentFormatter();
                    formatter.ReadFrom(reader);

                    T document = Assert.IsType <T>(formatter.Document);
                    verifyAction(document);
                }

            // ReadFrom with custom subclass.
            using (var stringReader = new StringReader(xmlString))
                using (XmlReader reader = XmlReader.Create(stringReader))
                {
                    var formatter = new AtomPub10CategoriesDocumentFormatter(typeof(InlineCategoriesDocumentSubclass), typeof(ReferencedCategoriesDocumentSubclass));
                    formatter.ReadFrom(reader);

                    if (typeof(T) == typeof(InlineCategoriesDocument))
                    {
                        InlineCategoriesDocumentSubclass document = Assert.IsType <InlineCategoriesDocumentSubclass>(formatter.Document);
                        verifyAction(document as T);
                    }
                    else
                    {
                        ReferencedCategoriesDocumentSubclass document = Assert.IsType <ReferencedCategoriesDocumentSubclass>(formatter.Document);
                        verifyAction(document as T);
                    }
                }

            // ReadXml.
            using (var stringReader = new StringReader(xmlString))
                using (XmlReader reader = XmlReader.Create(stringReader))
                {
                    reader.MoveToContent();

                    var formatter = new AtomPub10CategoriesDocumentFormatter();
                    ((IXmlSerializable)formatter).ReadXml(reader);

                    T document = Assert.IsType <T>(formatter.Document);
                    verifyAction(document);
                }

            // ReadXml with custom subclass.
            using (var stringReader = new StringReader(xmlString))
                using (XmlReader reader = XmlReader.Create(stringReader))
                {
                    reader.MoveToContent();

                    var formatter = new AtomPub10CategoriesDocumentFormatter(typeof(InlineCategoriesDocumentSubclass), typeof(ReferencedCategoriesDocumentSubclass));
                    ((IXmlSerializable)formatter).ReadXml(reader);

                    if (typeof(T) == typeof(InlineCategoriesDocument))
                    {
                        InlineCategoriesDocumentSubclass document = Assert.IsType <InlineCategoriesDocumentSubclass>(formatter.Document);
                        verifyAction(document as T);
                    }
                    else
                    {
                        ReferencedCategoriesDocumentSubclass document = Assert.IsType <ReferencedCategoriesDocumentSubclass>(formatter.Document);
                        verifyAction(document as T);
                    }
                }

            // Load.
            using (var stringReader = new StringReader(xmlString))
                using (XmlReader reader = XmlReader.Create(stringReader))
                {
                    T document = Assert.IsType <T>(CategoriesDocument.Load(reader));
                    verifyAction(document);
                }
        }
Ejemplo n.º 5
0
        public void WriteElementExtensions_NullWriter_ThrowsArgumentNullException()
        {
            var document = new InlineCategoriesDocumentSubclass();

            AssertExtensions.Throws <ArgumentNullException>("writer", () => document.WriteElementExtensionsEntryPoint(null, "version"));
        }
Ejemplo n.º 6
0
        public void TryParseElement_Invoke_ReturnsFalse(XmlReader reader, string version)
        {
            var document = new InlineCategoriesDocumentSubclass();

            Assert.False(document.TryParseElementEntryPoint(reader, version));
        }
Ejemplo n.º 7
0
        public void TryParseAttribute_Invoke_ReturnsFalse(string name, string ns, string value, string version)
        {
            var document = new InlineCategoriesDocumentSubclass();

            Assert.False(document.TryParseAttributeEntryPoint(name, ns, value, version));
        }