public void ShouldCreateWithAllBasicData(string path, string filename, string filecontent, DateTime creationDatetime) { // # Arrange. var Pathfile = System.IO.Path.Join(path, filename); var mockedFile = new MockFileData(filecontent) { CreationTime = creationDatetime }; var mockedFileSystem = new MockFileSystem(new Dictionary <string, MockFileData>() { { Pathfile, mockedFile } }); var mockedPluginHandler = new Mock <IPluginHandler>(MockBehavior.Strict); mockedPluginHandler.Setup(m => m.Execute(Pathfile)) .Returns(new ParseResult[0]); // No plugin installed so Execute returns nothing. // # Act. var res = FileItem.Create(mockedFileSystem, Pathfile, mockedPluginHandler.Object); // # Assert. res.Path.Should().Be(path); res.Name.Should().Be(filename); res.Data.Any().Should().BeFalse(); }
public void Create_ExistingFile_ReturnValidInstance() { var fileItem = FileItem.Create(_testDataFilePath); Assert.True(fileItem.DirectoryExists); Assert.True(fileItem.FileExists); Assert.True(fileItem.SizeInBytes > 0); Assert.Equal(_testDataFilePath, fileItem.FilePath); }
/// <summary> /// 创建新的FileItem /// </summary> /// <param name="fileInfo"></param> /// <param name="folder"></param> /// <returns></returns> public static FileItem CreateFileItem(FileInfo fileInfo, FileFolder folder) { FileItem fitem = GetNewFileItem(fileInfo, folder); fitem.Create(); fitem.FullId = String.Format("{0}.{1}", folder.FullId, fitem.Id); fitem.Update(); return(fitem); }
public void AddFile(string file) { if (sourceList.Items.Any(item => item.Location == file)) { return; } var item = FileItem.Create(file); ProcessFile(item); }
public void Create_NonExistingFileExistingDirectory_ReturnValidInstance() { var randomFilePath = Path.Combine(_baseDirectory, Path.GetRandomFileName()); var fileItem = FileItem.Create(randomFilePath); Assert.True(fileItem.DirectoryExists); Assert.False(fileItem.FileExists); Assert.Equal(0, fileItem.SizeInBytes); Assert.Equal(randomFilePath, fileItem.FilePath); }
public void Create_NonExistingFileNonExistingDirectory_ReturnValidInstance() { var randomDirectory = Path.Combine(_baseDirectory, $"fakedir_{DateTime.Now.Millisecond}\\{Path.GetRandomFileName()}"); var fileItem = FileItem.Create(randomDirectory); Assert.False(fileItem.DirectoryExists); Assert.False(fileItem.FileExists); Assert.Equal(0, fileItem.SizeInBytes); Assert.Equal(randomDirectory, fileItem.FilePath); }
public WorkbookDataFileWrapper(string dirFullPath) { try { m_FilePath = Path.Combine(dirFullPath, WORKBOOK_DATA_FILE_NAME); m_FileItems.Clear(); foreach (var text in File.ReadAllLines(m_FilePath, Encoding.Default)) // Такую кодировку использует Excel, и нам нужно её соблюдать { var item = FileItem.Create(text); if (item != null) { m_FileItems.Add(item); } } } catch (Exception) { m_FileItems.Clear(); } }
private static async Task MainAsync() { var settings = new RetrySettings(3, 2000); var retry = new RetryService(settings); IFileCopyService service = new StreamCopyService(retry); var source = FileItem.Create(SourceFilePath); var destination = FileItem.Create(DestinationFilePath); void PrintProgress(long bytesWritten) { var remainingBytes = source.SizeInBytes - bytesWritten; Console.WriteLine( $"Total: {source.SizeInBytes} - Written: {bytesWritten} - Remaining: {remainingBytes}"); } var progressIndicator = new Progress <long>(PrintProgress); var cst = new CancellationTokenSource(5000); var stopwatch = Stopwatch.StartNew(); try { await service.CopyAsync(source, destination, progressIndicator, cst.Token) .ContinueWith(task => Console.WriteLine("Copy file completed!"), cst.Token); } catch (Exception exception) { Console.WriteLine(exception.Message); } finally { stopwatch.Stop(); } Console.WriteLine($"Elapsed Milliseconds: {stopwatch.ElapsedMilliseconds}"); }
public void TestOrder() { if (Directory.Exists(".Distribox")) { Directory.Delete(".Distribox", true); } Directory.CreateDirectory(".Distribox"); Directory.CreateDirectory(".Distribox\\data"); try { FileItem item = new FileItem(); File.WriteAllText("Haha", string.Empty); item.Create("Haha", DateTime.FromFileTimeUtc(1)); File.WriteAllText("Haha", "haha"); File.Copy("Haha", ".Distribox\\data\\" + CommonHelper.GetSHA1Hash("Haha")); item.Change("Haha", CommonHelper.GetSHA1Hash("Haha"), DateTime.FromFileTimeUtc(2)); Assert.AreEqual(2, item.History.Count()); } finally { Directory.Delete(".Distribox", true); } }
public void Create_NotExistingPath_ThrowsException(string path) { var error = Assert.Throws <ArgumentException>(() => FileItem.Create(path)); Assert.Equal("filePath", error.ParamName); }