public void Should_ThrowCatalogNodeParseException_When_CourseRatingNodeHasIncorrectData(string invalidData) { var ratingNode = Mock.Of <INode>(n => n.InnerText == invalidData); var sut = new PluralsightNodeParser(SiteUrl, _nodeSelector); Assert.Throws <NodeParseException>(() => sut.ParseCourseRating(ratingNode)); }
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_ReturnEmptyRating_When_RatingNotSpecified() { // Arrange var expected = new CourseRating { Raters = 0, Rating = 0m }; var nodeData = "Not enough course ratings"; const string courseRatingAttribute = ParserConstants.CourseRatingAttribute; var ratingNode = Mock.Of <INode>(n => n.GetAttributeValue(courseRatingAttribute) == nodeData); var sut = new PluralsightNodeParser(SiteUrl, _nodeSelector); // Act var result = sut.ParseCourseRating(ratingNode); // Assert Assert.NotNull(result); Assert.Equal(expected.Rating, result.Rating); Assert.Equal(expected.Raters, result.Raters); }
public void Should_ParseCourseRatingNode() { // Arrange var expected = new CourseRating { Raters = 103, Rating = 1.25m }; var nodeData = string.Format(CultureInfo.InvariantCulture, "{0} stars from {1} users", expected.Rating, expected.Raters); const string courseRatingAttribute = ParserConstants.CourseRatingAttribute; var ratingNode = Mock.Of <INode>(n => n.GetAttributeValue(courseRatingAttribute) == nodeData); var sut = new PluralsightNodeParser(SiteUrl, _nodeSelector); // Act var result = sut.ParseCourseRating(ratingNode); // Assert Assert.NotNull(result); Assert.Equal(expected.Rating, result.Rating); Assert.Equal(expected.Raters, result.Raters); }
public void Should_ThrowCatalogNodeParseException_When_CourseRatingNodeHasIncorrectData(string invalidData) { var ratingNode = Mock.Of<INode>(n => n.InnerText == invalidData); var sut = new PluralsightNodeParser(SiteUrl, _nodeSelector); Assert.Throws<NodeParseException>(() => sut.ParseCourseRating(ratingNode)); }
public void Should_ReturnEmptyRating_When_RatingNotSpecified() { // Arrange var expected = new CourseRating { Raters = 0, Rating = 0m }; var nodeData = "Not enough course ratings"; const string courseRatingAttribute = ParserConstants.CourseRatingAttribute; var ratingNode = Mock.Of<INode>(n => n.GetAttributeValue(courseRatingAttribute) == nodeData); var sut = new PluralsightNodeParser(SiteUrl, _nodeSelector); // Act var result = sut.ParseCourseRating(ratingNode); // Assert Assert.NotNull(result); Assert.Equal(expected.Rating, result.Rating); Assert.Equal(expected.Raters, result.Raters); }
public void Should_ParseCourseRatingNode() { // Arrange var expected = new CourseRating { Raters = 103, Rating = 1.25m }; var nodeData = string.Format(CultureInfo.InvariantCulture, "{0} stars from {1} users", expected.Rating, expected.Raters); const string courseRatingAttribute = ParserConstants.CourseRatingAttribute; var ratingNode = Mock.Of<INode>(n => n.GetAttributeValue(courseRatingAttribute) == nodeData); var sut = new PluralsightNodeParser(SiteUrl, _nodeSelector); // Act var result = sut.ParseCourseRating(ratingNode); // Assert Assert.NotNull(result); Assert.Equal(expected.Rating, result.Rating); Assert.Equal(expected.Raters, result.Raters); }