public void ShouldWorkWithFileNodeBackupService() { var fs = new DryRunFileSystem(); var driveService = new DryRunDriveService(); IDownloader downloader = new Downloader(driveService, fs); FileNodeBackupService service = new FileNodeBackupService(downloader); service.Backup(Utils.MockFileNode("file1", "file1.txt", "text/plain"), "/temp"); Assert.AreEqual(1, ((DryRunFileBase)fs.File).CreateCount); }
private void bwDownload_DoWork(object sender, DoWorkEventArgs e) { DownloadParameters parameters = (DownloadParameters)e.Argument; backupService = ObjectContainer.Instance.GetInstance<FileNodeBackupService>(); IWalker walker = ObjectContainer.Instance.GetInstance<IWalker>(); backupProgressController.Downloader = Downloader; backupProgressController.Reporter = OnDownloading; // convert to file nodes // this will cause multiple List requests IFileNode[] fileNodes = Walk(walker, parameters.Files); backupProgressController.Start(fileNodes, backupService); foreach (var fileNode in fileNodes) { backupService.Backup(fileNode, parameters.DestinationDirectory); } backupProgressController.Stop(); }