public void WriteToTwice_Reader()
        {
            string       xml = "<root><child /><child2 /></root>";
            StringWriter sw  = new StringWriter();

            using (XmlWriter w = GetWriter(sw)) {
                XmlReader r = XmlReader.Create(new StringReader(xml));
                r.Read();
                r.Read();                  // at child
                SyndicationElementExtension x = new SyndicationElementExtension(r);
                w.WriteStartElement("root");
                x.WriteTo(w);
                x.WriteTo(w);                  // it is VALID.
                w.WriteEndElement();
            }
            Assert.AreEqual("<root><child></child><child></child></root>", sw.ToString());
        }
Beispiel #2
0
        public void WriteTo_WithReader_ReturnsExpected()
        {
            var extension = new SyndicationElementExtension(new XElement("ExtensionObject", new XElement("Value", 10)).CreateReader());

            using (var stringWriter = new StringWriter())
            {
                using (var writer = new XmlTextWriter(stringWriter))
                {
                    extension.WriteTo(writer);
                }

                Assert.Equal(@"<ExtensionObject><Value>10</Value></ExtensionObject>", stringWriter.ToString());
            }
        }
        static string ExtensionToString(SyndicationElementExtension extension)
        {
            StringBuilder     sb  = new StringBuilder();
            XmlWriterSettings xws = new XmlWriterSettings();

            xws.ConformanceLevel = ConformanceLevel.Fragment;
            xws.Indent           = true;
            xws.Encoding         = Encoding.ASCII;
            XmlWriter           xw  = XmlWriter.Create(sb, xws);
            XmlDictionaryWriter xdw = XmlDictionaryWriter.CreateDictionaryWriter(xw);

            extension.WriteTo(xdw);
            xdw.Close();
            return(sb.ToString());
        }
Beispiel #4
0
        public void WriteTo_ObjectWithXmlSerializer_ReturnsExpected()
        {
            var extensionObject = new ExtensionObject {
                Value = 10
            };
            var extension = new SyndicationElementExtension(extensionObject, new XmlSerializer(typeof(ExtensionObject)));

            using (var stringWriter = new StringWriter())
            {
                using (var writer = new XmlTextWriter(stringWriter))
                {
                    extension.WriteTo(writer);
                }

                Assert.Equal(@"<?xml version=""1.0"" encoding=""utf-16""?><ExtensionObject xmlns:xsi=""http://www.w3.org/2001/XMLSchema-instance"" xmlns:xsd=""http://www.w3.org/2001/XMLSchema""><Value>10</Value></ExtensionObject>", stringWriter.ToString());
            }
        }
Beispiel #5
0
        public void WriteTo_ObjectWithXmlObjectSerializer_ReturnsExpected()
        {
            var extensionObject = new ExtensionObject {
                Value = 10
            };
            var extension = new SyndicationElementExtension(extensionObject, new DataContractSerializer(typeof(ExtensionObject)));

            using (var stringWriter = new StringWriter())
            {
                using (var writer = new XmlTextWriter(stringWriter))
                {
                    extension.WriteTo(writer);
                }

                Assert.Equal(@"<ServiceElementExtensionTests.ExtensionObject xmlns:i=""http://www.w3.org/2001/XMLSchema-instance"" xmlns=""http://schemas.datacontract.org/2004/07/System.ServiceModel.Syndication.Tests""><Value>10</Value></ServiceElementExtensionTests.ExtensionObject>", stringWriter.ToString());
            }
        }
Beispiel #6
0
        public void WriteTo_NullWriter_ThrowsArgumentNullException()
        {
            var extension = new SyndicationElementExtension(new ExtensionObject());

            Assert.Throws <ArgumentNullException>("writer", () => extension.WriteTo(null));
        }