public void TestIsNotWithinParentDirectory() { MacroscopeJobMaster JobMaster; const string StartUrl = "http://www.companyname.com/path/to/some/deep/folder/index.html"; List <string> TargetUrls = new List <string> (); TargetUrls.Add("http://www.companyname.com/path/to/some/deep/folder/sub-folder/index.html"); TargetUrls.Add("http://www.companyname.com/path/to/some/deep/folder/sub-folder/sub-folder/index.html"); TargetUrls.Add("http://www.companyname.com/images/some-image.jpg"); TargetUrls.Add("http://www.companyname.com/path/to/some/folder/media/image"); JobMaster = new MacroscopeJobMaster( JobRunTimeMode: MacroscopeConstants.RunTimeMode.LIVE, TaskController: this ); JobMaster.SetStartUrl(Url: StartUrl); JobMaster.DetermineStartingDirectory(); foreach (string TargetUrl in TargetUrls) { Assert.IsFalse(JobMaster.IsWithinParentDirectory(TargetUrl), string.Format("FAIL: {0}", TargetUrl)); } }
public void TestGenerateXmlSitemap() { foreach (string Url in this.Urls) { MacroscopeJobMaster JobMaster = new MacroscopeJobMaster(MacroscopeConstants.RunTimeMode.LIVE); MacroscopeDocumentCollection DocCollection = new MacroscopeDocumentCollection(JobMaster: JobMaster); MacroscopeSitemapGenerator SitemapGenerator = new MacroscopeSitemapGenerator(NewDocCollection: DocCollection); DocCollection.AddDocument(new MacroscopeDocument(JobMaster.SetStartUrl(Url: Url))); XmlDocument SitemapXML = SitemapGenerator.GenerateXmlSitemap(Host: new Uri(Url).Host); Assert.AreEqual("urlset", SitemapXML.DocumentElement.LocalName); } }
public void TestJobMasterStartUrl() { MacroscopeJobMaster JobMaster; const string StartUrl = "http://www.companyname.com/path/to/some/deep/folder/index.html"; JobMaster = new MacroscopeJobMaster( JobRunTimeMode: MacroscopeConstants.RunTimeMode.LIVE, TaskController: this ); JobMaster.SetStartUrl(Url: StartUrl); Assert.AreEqual(StartUrl, JobMaster.GetStartUrl(), string.Format("FAIL: {0}", StartUrl)); }
public void TestWriteSitemapXml() { foreach (string Url in this.Urls) { MacroscopeJobMaster JobMaster = new MacroscopeJobMaster(MacroscopeConstants.RunTimeMode.LIVE); MacroscopeDocumentCollection DocCollection = new MacroscopeDocumentCollection(JobMaster: JobMaster); MacroscopeSitemapGenerator SitemapGenerator = new MacroscopeSitemapGenerator(NewDocCollection: DocCollection); DocCollection.AddDocument(new MacroscopeDocument(JobMaster.SetStartUrl(Url: Url))); string Filename = string.Join(".", Path.GetTempFileName(), ".xml"); SitemapGenerator.WriteSitemapXml(NewPath: Filename); Assert.IsTrue(File.Exists(Filename)); if (File.Exists(Filename)) { File.Delete(Filename); } } }