/// <summary> /// ���������� ���������� ����� /// </summary> /// <param name="filePath">���� � ����� ��� ������ ����������</param> /// <returns>���������� �����</returns> public FileMetadata GetFileMetadata(string filePath) { var fileInfo = new FileInfo(filePath); var meta = new FileMetadata { ByteSize = fileInfo.Length, LastModified = fileInfo.LastWriteTimeUtc }; return meta; }
public void InitializeTest() { // создаём тестовый набор данных: var file1Path = @"C:\some_folder\some_file1.csv"; var file1Meta = new FileMetadata { ByteSize = _file1ByteSize, LastModified = _file1LastModified }; var filesRepo = new SortedList<string, FileMetadata> { {file1Path, file1Meta} }; // делаем иньекцию тестового менеджера файловой системы _injectedManager = new MockFileSystemManager(filesRepo); _file1 = new SyncFile(file1Path, _injectedManager); }
public void InitializeTest() { // создаём тестовый набор данных: // иньекция системного времени: SystemTime.Now = () => _testDateTimeNow; // файл номер 1 var file1Path = @"C:\some_folder\some_file1.csv"; // путь var file1Meta = new FileMetadata {ByteSize = 10, LastModified = new DateTime(2013, 1, 5)}; // свойства // файл номер 2, три файла(три пути) с одинаковыми свойствами var file2Path = @"D:\some_folder2\stuff\some_file1.csv"; var file2WithDifferNamePath = @"D:\some_folder2\stuff\some_file1_with_differ_name.csv"; var file2WithDifferExtensionPath = @"D:\some_folder2\stuff\some_file1.with_differ_extension"; var file2Meta = new FileMetadata { ByteSize = 15, LastModified = new DateTime(2013, 1, 7) }; // создаем тестовый менеджер файловой системы _injectedManager = A.Fake<IFileSystemManager>(); // прописываем какие свойства (матаданные) он должен возвращать по каждому файлу A.CallTo(() => _injectedManager.GetFileMetadata(file1Path)).Returns(file1Meta); A.CallTo(() => _injectedManager.GetFileMetadata(file2Path)).Returns(file2Meta); A.CallTo(() => _injectedManager.GetFileMetadata(file2WithDifferNamePath)).Returns(file2Meta); A.CallTo(() => _injectedManager.GetFileMetadata(file2WithDifferExtensionPath)).Returns(file2Meta); #region делаем иньекцию тестового менеджера файловой системы: // создаем объекты SyncFile для файлов: // объект SyncFile для файла номер 1, неактуальный (более старый) _nonActualFile = new SyncFile(file1Path, _injectedManager); // объект SyncFile для файла номер 2, актуальный (более новый) _actualFile = new SyncFile(file2Path, _injectedManager); // объект SyncFile для файла номер 2, актуальный (более новый) с другим именем _actualFileWithDifferName = new SyncFile(file2WithDifferNamePath, _injectedManager); // объект SyncFile для файла номер 2, актуальный (более новый) с другим расширением _actualFileWithDifferExtension = new SyncFile(file2WithDifferExtensionPath, _injectedManager); _sfp = new SyncFilesPair(_injectedManager); #endregion }