public void Ctor_NullValueInCategories_ThrowsArgumentNullException() { var categories = new CategoriesDocument[] { null }; AssertExtensions.Throws <ArgumentNullException>("item", () => new ResourceCollectionInfo(new TextSyndicationContent("title"), new Uri("http://microsoft.com"), categories, true)); AssertExtensions.Throws <ArgumentNullException>("item", () => new ResourceCollectionInfo(new TextSyndicationContent("title"), new Uri("http://microsoft.com"), categories, new string[0])); }
public void Create_NullValueInCategories_ThrowsArgumentNullException() { var categories = new Collection <SyndicationCategory> { null }; AssertExtensions.Throws <ArgumentNullException>("item", () => CategoriesDocument.Create(categories)); AssertExtensions.Throws <ArgumentNullException>("item", () => CategoriesDocument.Create(categories, true, "scheme")); }
public void Create_LinkToCategoriesDocument_ReturnsExpected(Uri linkToCategoriesDocument) { ReferencedCategoriesDocument document = CategoriesDocument.Create(linkToCategoriesDocument); Assert.Empty(document.AttributeExtensions); Assert.Null(document.BaseUri); Assert.Empty(document.ElementExtensions); Assert.Null(document.Language); Assert.Equal(linkToCategoriesDocument, document.Link); }
public void WriteTo_HasDocument_SerializesExpected(CategoriesDocument document, string expected) { var formatter = new AtomPub10CategoriesDocumentFormatter(document); CompareHelper.AssertEqualWriteOutput(expected, writer => formatter.WriteTo(writer)); CompareHelper.AssertEqualWriteOutput(expected, writer => document.Save(writer)); CompareHelper.AssertEqualWriteOutput(expected, writer => { writer.WriteStartElement("app", "categories", "http://www.w3.org/2007/app"); ((IXmlSerializable)formatter).WriteXml(writer); writer.WriteEndElement(); }); }
public void Create_CategoriesAdvanced_ReturnsExpected(IList <SyndicationCategory> categories, bool isFixed, string scheme) { Collection <SyndicationCategory> categoriesCollection = categories == null ? null : new Collection <SyndicationCategory>(categories); InlineCategoriesDocument document = CategoriesDocument.Create(categoriesCollection, isFixed, scheme); Assert.Empty(document.AttributeExtensions); Assert.Null(document.BaseUri); Assert.Equal(categoriesCollection?.Count ?? 0, document.Categories.Count); Assert.Empty(document.ElementExtensions); Assert.Equal(isFixed, document.IsFixed); Assert.Null(document.Language); Assert.Equal(scheme, document.Scheme); }
public void SetDocumentEntryPoint(CategoriesDocument document) => SetDocument(document);
public Formatter(CategoriesDocument documentToWrite) : base(documentToWrite) { }
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); } }
public void Create_NullLinkToCategoriesDocument_ThrowsArgumentNullException() { AssertExtensions.Throws <ArgumentNullException>("link", () => CategoriesDocument.Create((Uri)null)); }
public static void WriteElementExtensionsEntryPoint(XmlWriter writer, CategoriesDocument categories, string version) { WriteElementExtensions(writer, categories, version); }
public static bool TryParseElementEntryPoint(XmlReader reader, CategoriesDocument categories, string version) { return(TryParseElement(reader, categories, version)); }
public static bool TryParseAttributeEntryPoint(string name, string ns, string value, CategoriesDocument categories, string version) { return(TryParseAttribute(name, ns, value, categories, version)); }
public static void LoadElementExtensionsEntryPoint(XmlReader reader, CategoriesDocument categories, int maxExtensionSize) => LoadElementExtensions(reader, categories, maxExtensionSize);
public static IEnumerable <object[]> Ctor_TextSyndicationContent_Uri_Categories_Bool_TestData() { yield return(new object[] { new TextSyndicationContent(""), new Uri("http://microsoft.com"), null, true }); yield return(new object[] { new TextSyndicationContent(""), new Uri("http://microsoft.com"), null, false }); yield return(new object[] { new TextSyndicationContent("title", TextSyndicationContentKind.Html), new Uri("/relative", UriKind.Relative), new CategoriesDocument[0], true }); yield return(new object[] { new TextSyndicationContent("title", TextSyndicationContentKind.Html), new Uri("/relative", UriKind.Relative), new CategoriesDocument[0], false }); yield return(new object[] { new TextSyndicationContent("title", TextSyndicationContentKind.Html), new Uri("/relative", UriKind.Relative), new CategoriesDocument[] { CategoriesDocument.Create(new Uri("http://microsoft.com")) }, true }); yield return(new object[] { new TextSyndicationContent("title", TextSyndicationContentKind.Html), new Uri("/relative", UriKind.Relative), new CategoriesDocument[] { CategoriesDocument.Create(new Uri("http://microsoft.com")) }, false }); }
public static IEnumerable <object[]> Ctor_TextSyndicationContent_Uri_Categories_Accepts_TestData() { yield return(new object[] { new TextSyndicationContent(""), new Uri("http://microsoft.com"), null, null }); yield return(new object[] { new TextSyndicationContent("title", TextSyndicationContentKind.Html), new Uri("/relative", UriKind.Relative), new CategoriesDocument[0], new string[0] }); yield return(new object[] { new TextSyndicationContent("title", TextSyndicationContentKind.Html), new Uri("/relative", UriKind.Relative), new CategoriesDocument[] { CategoriesDocument.Create(new Uri("http://microsoft.com")) }, new string[] { "accepts" } }); }