public void FileServiceRestoreAsyncTest() { SQLiteDatabase db = new SQLiteDatabase(".\\", nameof(FileServiceRestoreAsyncTest)); CoreFileService fmSvc = new CoreFileService(new DaoRepository(db)); fmSvc.ChunkLength = 111299; ConsoleLogger logger = new ConsoleLogger(); logger.AddDetails = false; logger.StartLoggingThread(); FileInfo testDataFile = new FileInfo("C:\\BamTestData\\TestDataFile.dll"); ChunkedFileDescriptor chunkedFile = fmSvc.StoreFileChunksInRepo(testDataFile); FileInfo writeTo = new FileInfo($".\\{nameof(FileServiceRestoreAsyncTest)}_restored.dat"); DateTime start = DateTime.UtcNow; ChunkedFileWriter writer = ChunkedFileWriter.FromFileHash(fmSvc, chunkedFile.FileHash, logger); writer.Write(writeTo.FullName).Wait(); TimeSpan took = DateTime.UtcNow.Subtract(start); FileInfo written = new FileInfo(writeTo.FullName); OutLine(took.ToString(), ConsoleColor.Cyan); Expect.IsTrue(written.Exists); Expect.AreEqual(testDataFile.Md5(), written.Md5(), "file content didn't match"); }
public ChunkedFileWriter GetFileWriter(string fileHash) { return(ChunkedFileWriter.FromFileHash(this, fileHash, Logger)); }