public void Add_Invoke_ReturnsExpected()
        {
            SyndicationElementExtensionCollection elementExtensions = new SyndicationCategory().ElementExtensions;

            elementExtensions.Add(new ExtensionObject {
                Value = 10
            });
            elementExtensions.Add(new SyndicationElementExtension(new ExtensionObject {
                Value = 11
            }));
            using (var stringReader = new StringReader(@"<SyndicationElementExtensionCollectionTests.ExtensionObject xmlns=""http://schemas.datacontract.org/2004/07/System.ServiceModel.Syndication"" xmlns:i=""http://www.w3.org/2001/XMLSchema-instance""><Value>12</Value></SyndicationElementExtensionCollectionTests.ExtensionObject>"))
                using (XmlReader reader = XmlReader.Create(stringReader))
                {
                    elementExtensions.Add(reader);
                }
            elementExtensions.Add(new ExtensionObject {
                Value = 13
            }, new DataContractSerializer(typeof(ExtensionObject)));
            elementExtensions.Add(new ExtensionObject {
                Value = 14
            }, (DataContractSerializer)null);
            elementExtensions.Add(new ExtensionObject {
                Value = 15
            }, new XmlSerializer(typeof(ExtensionObject)));
            elementExtensions.Add(new ExtensionObject {
                Value = 16
            }, (XmlSerializer)null);
            elementExtensions.Add("outerName", "outerNamespace", new ExtensionObject {
                Value = 17
            });
            elementExtensions.Add("outerName", "outerNamespace", new ExtensionObject {
                Value = 18
            }, new DataContractSerializer(typeof(ExtensionObject)));
            elementExtensions.Add("outerName", "outerNamespace", new ExtensionObject {
                Value = 19
            }, null);

            Assert.Equal(10, elementExtensions.Count);

            using (XmlReader reader = elementExtensions.GetReaderAtElementExtensions())
            {
                Assert.Equal(@"<SyndicationElementExtensionCollectionTests.ExtensionObject xmlns=""http://schemas.datacontract.org/2004/07/System.ServiceModel.Syndication.Tests"" xmlns:i=""http://www.w3.org/2001/XMLSchema-instance""><Value>10</Value></SyndicationElementExtensionCollectionTests.ExtensionObject>", reader.ReadOuterXml());
            }
        }
        public void GetReaderAtElementExtensions_InvokeMultipleTimes_ReturnsNewReader()
        {
            SyndicationElementExtensionCollection elementExtensions = new SyndicationCategory().ElementExtensions;

            Assert.NotSame(elementExtensions.GetReaderAtElementExtensions(), elementExtensions.GetReaderAtElementExtensions());
        }