public void runTestSimplePage()
        {
            //
            Page page = new Page();

            page.urlStr = "http://www.google.de";
            const String ankerUrlStr        = "http://www.google.de/some_sub_path/";
            const String imageUrlStr        = "/bilder/bild1.jpg";
            String       imageUrlStrAbsolut = page.urlStr + imageUrlStr;

            String ankerTag = "<a \n   href=\"" + ankerUrlStr + "\" attr2 = \"value2\">skjfk</a>";
            String imageTag = "<img \r  src\r\n=\n\r   \"" + imageUrlStr + "\" some=\"other\" flags=\"flag\">";

            page.pageContent = "jsdlkfjösjf ksjfj jdsflkjas f " + ankerTag + "sjlkfjsf" + imageTag + "sjdfkkdsjflk";

            //
            CrawlerJobPartAnalyzePage crawlerJobPartAnalyzePage = new CrawlerJobPartAnalyzePage();
            CrawlerJobContext         crawlerJobContext         = new CrawlerJobContext();

            crawlerJobContext.page         = page;
            crawlerJobContext.imageBacklog = new CrawlerImageBacklog();
            crawlerJobPartAnalyzePage.crawlerJobContext = crawlerJobContext;


            //
            List <ICrawlerJobPart> result = crawlerJobPartAnalyzePage.run();

            //
            Assert.IsNotNull(result);
            Assert.AreEqual(2, result.Count);
            Assert.IsTrue(result[0] is CrawlerJobPartGenerateSubJobs);
            Assert.IsTrue(result[1] is CrawlerJobPartRetrieveImages);

            //
            Assert.IsNotNull(page);
            Assert.IsNotNull(page.pageContent);
            Assert.IsNotNull(page.ankerHrefLinkList);
            Assert.AreEqual(1, page.ankerHrefLinkList.Count);
            Assert.AreEqual(ankerUrlStr, page.ankerHrefLinkList[0]);

            Assert.IsNotNull(page.imageSrcLinkList);
            Assert.AreEqual(1, page.imageSrcLinkList.Count);
            Assert.AreEqual(imageUrlStrAbsolut, page.imageSrcLinkList[0]);
        }
        public void runTestMetataggedPage()
        {
            //
            Page page = new Page();

            page.urlStr = "http://www.google.de";
            const String ankerUrlStr        = "http://www.google.de/some_sub_path/";
            const String imageUrlStr        = "/bilder/bild1.jpg";
            String       imageUrlStrAbsolut = page.urlStr + imageUrlStr;

            String ankerTag = "<a \n   href=\"" + ankerUrlStr + "\" attr2 = \"value2\">skjfk</a>";
            String imageTag = "<img \r  src\r\n=\n\r   \"" + imageUrlStr + "\" some=\"other\" flags=\"flag\">";

            page.pageContent = "<mEta name=\"roBots\" content=\"ebc,noFollow,lala\">js<mEta name=\"roBots\" content=\"ebc,noIndEx,lala\">dlkfjösjf ksjfj jdsflkjas f " + ankerTag + "sjlkfjsf" + imageTag + "sjdfkkdsjflk";

            //
            CrawlerJobPartAnalyzePage crawlerJobPartAnalyzePage = new CrawlerJobPartAnalyzePage();
            CrawlerJobContext         crawlerJobContext         = new CrawlerJobContext();

            crawlerJobContext.page         = page;
            crawlerJobContext.imageBacklog = new CrawlerImageBacklog();
            crawlerJobPartAnalyzePage.crawlerJobContext = crawlerJobContext;

            //
            List <ICrawlerJobPart> result = crawlerJobPartAnalyzePage.run();

            //
            Assert.IsNotNull(result);
            Assert.AreEqual(0, result.Count);

            //
            Assert.IsNotNull(page);
            Assert.IsNotNull(page.pageContent);
            Assert.IsNull(page.ankerHrefLinkList);
            Assert.IsNull(page.imageSrcLinkList);
        }