public void TestMethod1()
        {
            var angelService = new AngleSharpService();
            var standardsUrl = "https://www.gov.uk/government/collections/apprenticeship-standards";

            var mappings = angelService.GetLinks(standardsUrl, ".publication.document-row h3 a", "(ready for delivery)");

            Assert.IsTrue(73 < mappings.Count);
        }
        public void WhenUrlIsEmptyItShouldReturnNoLinks()
        {
            var mockHttpGet = new Mock <IHttpGet>();

            mockHttpGet.Setup(m => m.Get(It.IsAny <string>())).Returns(HtmlText);
            var angleSharpService = new AngleSharpService(mockHttpGet.Object);
            var x = angleSharpService.GetLinks(string.Empty, "a", "HELLO");

            Assert.AreEqual(0, x.Count);
        }
        public void WhenUrlIsEmpty()
        {
            var mockBrowsingContext = new Mock <IHttpGet>();

            mockBrowsingContext.Setup(m => m.Get(It.IsAny <string>(), null, null)).Returns(HtmlText);

            AngleSharpService angleSharpService = new AngleSharpService(mockBrowsingContext.Object, Mock.Of <ILog>());
            var x = angleSharpService.GetLinks(string.Empty, "div a", "HELLO");

            Assert.AreEqual(0, x.Count);
        }
        public void WhenGettingLinks()
        {
            var mockBrowsingContext = new Mock <IHttpGet>();

            mockBrowsingContext.Setup(m => m.Get(It.IsAny <string>(), null, null)).Returns(HtmlText);

            AngleSharpService angleSharpService = new AngleSharpService(mockBrowsingContext.Object, Mock.Of <ILog>());
            var x = angleSharpService.GetLinks("path/to/something", "div a", "HELLO");

            Assert.AreEqual(1, x.Count);
            Assert.AreEqual("hello.com", x.FirstOrDefault());
        }
        public void WhenGettingLinks()
        {
            var mockHttpGet = new Mock <IHttpGet>();

            mockHttpGet.Setup(m => m.Get(It.IsAny <string>())).Returns(HtmlText);

            var angleSharpService = new AngleSharpService(mockHttpGet.Object);
            var x = angleSharpService.GetLinks("path/to/something", "a", "HELLO");

            Assert.AreEqual(2, x.Count, $"The number of links should be 2, but is {x.Count}");
            Assert.AreEqual("hello.com", x.FirstOrDefault(), "The first link is not to hello.com");
        }