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 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 Create_NullLinkToCategoriesDocument_ThrowsArgumentNullException()
 {
     AssertExtensions.Throws <ArgumentNullException>("link", () => CategoriesDocument.Create((Uri)null));
 }
        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" } });
        }