public void AttemptToOverwriteExistingFileInCompressedLocationThrowsIoExceptionAndResultsInNoChanges() { // Arrange _fileSystem.AddFile(TestConstants.ExistingJpgFullFileName, 100000, new DateTime(2013, 5, 29, 19, 39, 18)); const string movedFileName = TestConstants.ExistingDirectory + "\\0000-00-00_00.00.00_RENAMED_6867.JPG"; _fileSystem.MoveFile(TestConstants.ExistingJpgFullFileName, movedFileName); IFileHandler fileHandler = _fileHandlerFactory.GetFileHandler(movedFileName, _fileSystem, new MockCompress(_fileSystem), new MockExifReader(_fileSystem)); var newDir = new MockPictureDirectory {Directory = TestConstants.NewDirectory}; string expectedNewFilename = fileHandler.GetNewCompressedFileName(); //_fileSystem.CopyFile(TestConstants.ExistingTxtFullFileName, TestConstants.NewDirectory + "\\" + expectedNewFilename); _fileSystem.AddFile(TestConstants.NewDirectory + "\\" + expectedNewFilename, 10453, null); long blockingFileSize = _fileSystem.GetFileLength(TestConstants.NewDirectory + "\\" + expectedNewFilename); bool expectedExceptionCaught = false; // Act try { string newFileName = fileHandler.PerformCompressAndMove(newDir); } catch (IOException) { expectedExceptionCaught = true; } long newFileSize = _fileSystem.GetFileLength(TestConstants.NewDirectory + "\\" + expectedNewFilename); // Assert Assert.IsTrue(expectedExceptionCaught); Assert.AreEqual(blockingFileSize, newFileSize); Assert.AreEqual(fileHandler.FileName, movedFileName); Assert.IsTrue(_fileSystem.FileExists(movedFileName)); }
public void PerformCompressAndMoveRemovesOldFileAndCreatesNew() { // Arrange var targetDirectory = new MockPictureDirectory {Directory = "\\mockdir"}; (_fileSystem).AddFile("\\mockdir\\test_RENAMED_2353.JPG", 100000); var mockCompressor = new MockCompress(_fileSystem); var fileHandler = new JpgFileHandler("\\mockdir\\test_RENAMED_2353.JPG", fileSystem: _fileSystem, compressor: mockCompressor); // Act fileHandler.PerformCompressAndMove(targetDirectory); // Assert Assert.IsTrue(!_fileSystem.FileExists("\\mockdir\\test_RENAMED_2353.JPG")); Assert.IsTrue(_fileSystem.FileExists("\\mockdir\\test_COMPRESSED_2353.JPG")); }
public void DoNotCompressNonRenamedOriginalFile() { // Arrange _fileSystem.AddFile(TestConstants.ExistingJpgFullFileName, 100000, new DateTime(2013, 5, 29, 19, 39, 18)); IFileHandler fileHandler = _fileHandlerFactory.GetFileHandler(TestConstants.ExistingJpgFullFileName, _fileSystem, new MockCompress(_fileSystem), new MockExifReader(_fileSystem)); var newDir = new MockPictureDirectory {Directory = TestConstants.NewDirectory}; // Act fileHandler.PerformCompressAndMove(newDir); // Assert Assert.Fail(); }
private void RenameJpgWithSpecifiedDate(DateTime providedDate) { // Arrange _fileSystem.AddFile(TestConstants.ExistingJpgFullFileName, 100000, providedDate); IFileHandler fileHandler = _fileHandlerFactory.GetFileHandler(TestConstants.ExistingJpgFullFileName, _fileSystem, null, new MockExifReader(_fileSystem)); var newDir = new MockPictureDirectory {Directory = TestConstants.NewDirectory}; //.GetOrCreateDirectory(TestConstants.NewDirectory); // Act string test = fileHandler.PerformRenameAndMove(newDir); // Assert Assert.IsTrue(_fileSystem.FileExists(TestConstants.ExistingJpgFullFileName)); }
public void RenamingToExistingFileWithSameNameFails() { // Arrange _fileSystem.AddFile(TestConstants.ExistingJpgFullFileName, 100000, new DateTime(2013, 5, 29, 19, 39, 18)); _fileSystem.CreateDirectory(TestConstants.NewDirectory); IFileHandler fileHandler = _fileHandlerFactory.GetFileHandler(TestConstants.ExistingJpgFullFileName, _fileSystem, new MockCompress(_fileSystem), new MockExifReader(_fileSystem)); var newDir = new MockPictureDirectory {Directory = TestConstants.NewDirectory}; string firstFileName = fileHandler.PerformRenameAndMove(newDir); // Act string secondFileName = fileHandler.PerformRenameAndMove(newDir); // Assert Assert.AreEqual(firstFileName, secondFileName); Assert.AreNotEqual(secondFileName, TestConstants.ExistingJpgFullFileName); }
public void RenamingToExistingFileFromOtherFileThrowsIoException() { // Arrange _fileSystem.AddFile(TestConstants.ExistingJpgFullFileName, 100000, new DateTime(2013, 5, 29, 19, 39, 18)); _fileSystem.CreateDirectory(TestConstants.NewDirectory); IFileHandler fileHandler = _fileHandlerFactory.GetFileHandler(TestConstants.ExistingJpgFullFileName, _fileSystem, new MockCompress(_fileSystem), new MockExifReader(_fileSystem)); var newDir = new MockPictureDirectory {Directory = TestConstants.NewDirectory}; _fileSystem.CopyFile(TestConstants.ExistingJpgFullFileName, newDir.Directory + "\\" + fileHandler.GetNewRenamedFileName()); // Act fileHandler.PerformRenameAndMove(newDir); // Assert Assert.Fail("Expected exception"); }
public void JpgFileHandlerGetNewFileNameReturnsSameNameForAlreadyRenamedFile() { // Arrange _fileSystem.AddFile(TestConstants.ExistingJpgFullFileName, 100000, new DateTime(2013, 5, 29, 19, 39, 18)); _fileSystem.CreateDirectory("\\tempdir"); _fileSystem.CreateDirectory("\\newdir"); var tempDir = new MockPictureDirectory {Directory = "\\tempdir"}; var newDir = new MockPictureDirectory {Directory = "\\newdir"}; IFileHandler fileHandler = _fileHandlerFactory.GetFileHandler(TestConstants.ExistingJpgFullFileName, _fileSystem, null, new MockExifReader(_fileSystem)); string newFileName = fileHandler.GetNewRenamedFileName(); string movedFileName = fileHandler.PerformRenameAndMove(tempDir); IFileHandler fileHandler2 = _fileHandlerFactory.GetFileHandler(movedFileName, _fileSystem, null, new MockExifReader(_fileSystem)); // Act string newFileName2 = fileHandler2.GetNewRenamedFileName(); // Assert Assert.AreEqual(newFileName, newFileName2); }