public void Should_ParseCoAuthorNode() { // Arrange var expected = new List <PluralsightAuthor> { new PluralsightAuthor { FullName = "Scott Allen" }, new PluralsightAuthor { FullName = "Keith Sparkjoy" }, new PluralsightAuthor { FullName = "Dan Sullivan" } }; const string authorFullNameAttribute = ParserConstants.AuthorFullNameAttribute; var coAuthorNode = Mock.Of <INode>(n => n.GetAttributeValue(authorFullNameAttribute) == string.Join(", ", expected.Select(x => x.FullName))); var sut = new PluralsightNodeParser(SiteUrl, _nodeSelector); // Act var result = sut.ParseCoAuthors(coAuthorNode); // Assert Assert.NotNull(result); Assert.Equal(expected.Select(x => x.FullName), result.Select(x => x.FullName)); }
public void Should_ThrowArgumentNullException_When_ArgumentIsNull() { global::System.Threading.Tasks.Task test = null; Assert.Throws<ArgumentNullException>(() => new PluralsightNodeParser(null, null)); var sut = new PluralsightNodeParser(SiteUrl, _nodeSelector); Assert.Throws<ArgumentNullException>(() => sut.ParseCategoryNode(null)); Assert.Throws<ArgumentNullException>(() => sut.ParseCategoryIdInHtmlDocument(null)); Assert.Throws<ArgumentNullException>(() => sut.ParseSketchNode(null)); Assert.Throws<ArgumentNullException>(() => sut.ParseCourseInfo(null)); Assert.Throws<ArgumentNullException>(() => sut.ParseAuthor(null)); Assert.Throws<ArgumentNullException>(() => sut.ParseAuthorFullName(null)); Assert.Throws<ArgumentNullException>(() => sut.IsCoAuthorNode(null)); Assert.Throws<ArgumentNullException>(() => sut.ParseCoAuthors(null)); Assert.Throws<ArgumentNullException>(() => sut.ParseCourseLevel(null)); Assert.Throws<ArgumentNullException>(() => sut.ParseCourseRating(null)); Assert.Throws<ArgumentNullException>(() => sut.ParseCourseDuration(null)); Assert.Throws<ArgumentNullException>(() => sut.ParseCourseReleaseDate(null)); }
public void Should_ThrowArgumentNullException_When_ArgumentIsNull() { global::System.Threading.Tasks.Task test = null; Assert.Throws <ArgumentNullException>(() => new PluralsightNodeParser(null, null)); var sut = new PluralsightNodeParser(SiteUrl, _nodeSelector); Assert.Throws <ArgumentNullException>(() => sut.ParseCategoryNode(null)); Assert.Throws <ArgumentNullException>(() => sut.ParseCategoryIdInHtmlDocument(null)); Assert.Throws <ArgumentNullException>(() => sut.ParseSketchNode(null)); Assert.Throws <ArgumentNullException>(() => sut.ParseCourseInfo(null)); Assert.Throws <ArgumentNullException>(() => sut.ParseAuthor(null)); Assert.Throws <ArgumentNullException>(() => sut.ParseAuthorFullName(null)); Assert.Throws <ArgumentNullException>(() => sut.IsCoAuthorNode(null)); Assert.Throws <ArgumentNullException>(() => sut.ParseCoAuthors(null)); Assert.Throws <ArgumentNullException>(() => sut.ParseCourseLevel(null)); Assert.Throws <ArgumentNullException>(() => sut.ParseCourseRating(null)); Assert.Throws <ArgumentNullException>(() => sut.ParseCourseDuration(null)); Assert.Throws <ArgumentNullException>(() => sut.ParseCourseReleaseDate(null)); }
public void Should_ParseCoAuthorNode() { // Arrange var expected = new List<PluralsightAuthor> { new PluralsightAuthor{FullName = "Scott Allen"}, new PluralsightAuthor{FullName = "Keith Sparkjoy"}, new PluralsightAuthor{FullName = "Dan Sullivan"} }; const string authorFullNameAttribute = ParserConstants.AuthorFullNameAttribute; var coAuthorNode = Mock.Of<INode>(n => n.GetAttributeValue(authorFullNameAttribute) == string.Join(", ", expected.Select(x=> x.FullName))); var sut = new PluralsightNodeParser(SiteUrl, _nodeSelector); // Act var result = sut.ParseCoAuthors(coAuthorNode); // Assert Assert.NotNull(result); Assert.Equal(expected.Select(x =>x.FullName), result.Select(x =>x.FullName)); }