public async Task RenameFile_ShouldCallRenameFile(
			[Frozen]Mock<ISynchronizedFilesRepository> syncFilesRepository,
			[Frozen]Mock<IAsyncFileOperations> fileOperations,
			  SynchronizeFileService sut,
			  SourceFilePath newFilePath,
			  SourceFilePath oldFilePath,
			  TargetFilePath oldMirroredFilePath,
			  TargetFilePath newMirroredFilePath
			  )
		{
			//arrange											
			syncFilesRepository.Setup(s => s.GetMirroredFilePath(It.IsAny<CancellationToken>(), oldFilePath.File))
							   .ReturnsTask(oldMirroredFilePath.File);
			syncFilesRepository.Setup(s => s.GetMirroredFilePath(It.IsAny<CancellationToken>(), newFilePath.File))
							   .ReturnsTask(newMirroredFilePath.File);
			//act
			await sut.RenameFile(CancellationToken.None, newFilePath.File, oldFilePath.File);
			//assert
			fileOperations.Verify(f => f.Move(oldMirroredFilePath.ToString(), newMirroredFilePath.ToString()));
		}
		public async Task RenameFile_ShouldCallAddSynchronization(
			[Frozen]Mock<ISynchronizedFilesRepository> syncFilesRepository,
			[Frozen]Mock<IAsyncFileOperations> fileOperations,
			  SynchronizeFileService sut,
			  SourceFilePath newFilePath,
			  SourceFilePath oldFilePath,
			  TargetFilePath oldMirroredFilePath
			  )
		{
			//arrange			
			var expectedTargetFilePath = Path.Combine(
				sut.Configuration.TargetPath.FullName,
				newFilePath.RelativePath,
				oldMirroredFilePath.File.Name);
			syncFilesRepository.Setup(s => s.GetMirroredFilePath(It.IsAny<CancellationToken>(), oldFilePath.File))
							   .ReturnsTask(oldMirroredFilePath.File);
			//act
			await sut.RenameFile(CancellationToken.None, newFilePath.File, oldFilePath.File);
			//assert
			syncFilesRepository.Verify(f => f.AddSynchronization(
				It.IsAny<CancellationToken>(),
				newFilePath.File));
		}