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);
 }
Пример #2
0
        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();
        }
        public void SetUp()
        {
            mockFileSystem = Utils.CreateStubFileSystem(MockBehavior.Strict);

            mockDownloader = new Mock<IDownloader>(MockBehavior.Strict);
            mockDownloader.SetupGet(p => p.FileSystem).Returns(mockFileSystem.Object);
            backupService = new FileNodeBackupService(mockDownloader.Object);
        }
        public void CountExportFiles_OneGoogleFile()
        {
            IFileNode fileNode = Utils.MockFileNode("file", "file1.gdoc", MimeTypes.GoogleDoc);
            IDriveService driveService = Mock.Of<IDriveService>();
            IFileSystem fileSystem = Mock.Of<IFileSystem>();

            // use the actual downloader
            var downloader = new Downloader(driveService, fileSystem)
            {
                ExportFamily = ExportFamily.Microsoft | ExportFamily.Pdf
            };
            backupService = new FileNodeBackupService(downloader);
            int result = backupService.CountExportFiles(fileNode);
            Assert.AreEqual(2, result);
        }
        public void CountExportFiles_OneFolderWithTwoFiles()
        {
            IFileNode fileNode = Utils.MockFileNode("folder", "folder",
                Utils.MockFileNode("file", "file1.txt", "text/plain"),
                Utils.MockFileNode("file2", "file2.txt", "text/plain")
                );
            IDriveService driveService = Mock.Of<IDriveService>();
            IFileSystem fileSystem = Mock.Of<IFileSystem>();

            // use the actual downloader
            var downloader = new Downloader(driveService, fileSystem);
            backupService = new FileNodeBackupService(downloader);
            int result = backupService.CountExportFiles(fileNode);
            Assert.AreEqual(2, result);
        }