Exemple #1
0
        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));
      }
Exemple #3
0
        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));
        }
Exemple #4
0
        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);
        }
Exemple #5
0
        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);
      }