public void DownloadHttp() { FileDownloader downloader = new FileDownloader(); foreach (String s in fileSizes.Keys) { downloader.Download(InstallPadTest.GetDownloadPath(s), OUTPUT_DIRECTORY); string fi = Path.Combine(OUTPUT_DIRECTORY, s); // Veryify file exists and is the correct size Assert.IsTrue(InstallPadTest.VerifyExistenceAndSize(fi, fileSizes[s])); } }
public void DownloadFtp() { FileInfo info; // We expect no exceptions downloadFtpTestDownloader = new FileDownloader(); downloadFtpTestDownloader.ProgressChanged += new DownloadProgressHandler(DownloadFtp_ProgressChanged); downloadFtpTestDownloader.Download(firefoxFtpUrl, OUTPUT_DIRECTORY); string fi = Path.Combine(OUTPUT_DIRECTORY, Path.GetFileName(new Uri(firefoxFtpUrl).ToString())); // Ensure the file size is 1KB, meaning we were notified of progress information // and Cancel worked. info = new FileInfo(fi); Assert.AreEqual(info.Length, 1024); // Trying (and failing) to resume an ftp source should result // in the file getting deleted and starting over at 0 KB. downloadFtpTestDownloader.Download(firefoxFtpUrl, OUTPUT_DIRECTORY); info = new FileInfo(fi); Assert.AreEqual(info.Length, 1024); }
public void MalformedUrl() { // We expect some kind of descriptive argument exception when we give a malformed url FileDownloader downloader = new FileDownloader(); ArgumentException ex=null; try { downloader.Download(malformedUrl, OUTPUT_DIRECTORY); } catch (ArgumentException e) { ex = e; } finally { Assert.IsNotNull(ex); } }
public void Cancel() { cancelTestDownloader = new FileDownloader(); cancelTestDownloader.ProgressChanged += new DownloadProgressHandler(Cancel_ProgressChanged); cancelTestDownloader.Download(InstallPadTest.GetDownloadPath("test3.txt"), OUTPUT_DIRECTORY); string fi = Path.Combine(OUTPUT_DIRECTORY, "test3.txt"); // Ensure file exists but is not full, since our block size is 1k and we've only downloaded // one block by this point. Assert.IsTrue(File.Exists(fi)); FileInfo info = new FileInfo(fi); // If block size is 1K, which it is by default, then info.Length should be 1024 Assert.IsTrue(info.Length != 0); Assert.IsTrue(info.Length < fileSizes["test3.txt"]); }
public void BadUrls() { FileDownloader downloader = new FileDownloader(); foreach (String badUrl in badUrls) { System.Net.WebException webException = null; try { downloader.Download(badUrl, OUTPUT_DIRECTORY); } catch (System.Net.WebException e) { webException = e; } finally { Assert.IsNotNull(webException); } } }
public void DownloadFileWithAlternateFromWindowsShare() { // These download URLs need to be changed FileDownloader downloader = new FileDownloader(); // Download them from a windows share. We could get a C# MapDrive() function to allow this portion of the // test not to rely on a hardcoded SAMBA path. if (Directory.Exists(sambaPath)) { foreach (String s in fileSizes.Keys) { string fileUrl = "file:///" + sambaPath + s; List<string> urlList = new List<string>(); urlList.Add("file://somebadpath" + s); urlList.Add(fileUrl); urlList.Add("file://somebadpath" + s); downloader.Download(urlList, OUTPUT_DIRECTORY); string fi = Path.Combine(OUTPUT_DIRECTORY, s); Assert.IsTrue(InstallPadTest.VerifyExistenceAndSize(fi, fileSizes[s])); } } else { Assert.Ignore("Test ignored because share is not mapped or may not exist."); } }
public void DownloadFileWithAlternate() { // These download URLs need to be changed FileDownloader downloader = new FileDownloader(); foreach (String s in fileSizes.Keys) { string fileUrl = "file:///" + Path.Combine(DATA_DIRECTORY, s); List<string> urlList = new List<string>(); urlList.Add("file://somebadpath"+s); urlList.Add(fileUrl); urlList.Add("file://somebadpath"+s); downloader.Download(urlList, OUTPUT_DIRECTORY); // Veryify file exists and is the correct size Assert.IsTrue(InstallPadTest.VerifyExistenceAndSize(Path.Combine(OUTPUT_DIRECTORY, s), fileSizes[s])); } }
public void DownloadFileFromWindowsShare() { FileDownloader downloader = new FileDownloader(); // Download them from a windows share. We could get a C# MapDrive() function to allow this portion of the // test not to rely on a hardcoded share path. if (Directory.Exists(sambaPath)) { foreach (String s in fileSizes.Keys) { string fileUrl = "file:///" + sambaPath + s; downloader.Download(fileUrl, OUTPUT_DIRECTORY); string fi = Path.Combine(OUTPUT_DIRECTORY, s); Assert.IsTrue(InstallPadTest.VerifyExistenceAndSize(fi, fileSizes[s])); } } else { Assert.Ignore("Test ignored because share is not mapped or may not exist."); } }
public void DownloadFile() { FileDownloader downloader = new FileDownloader(); foreach (String s in fileSizes.Keys) { string fileUrl = "file:///" + Path.Combine(DATA_DIRECTORY, s); downloader.Download(fileUrl, OUTPUT_DIRECTORY); string fi = Path.Combine(OUTPUT_DIRECTORY, s); // Veryify file exists and is the correct size Assert.IsTrue(InstallPadTest.VerifyExistenceAndSize(fi, fileSizes[s])); } }