public async Task Synchronize_ShouldCallInnerSynchronize(
			[Frozen]Mock<IFileTranscoder> innerFileTranscoder,
			CopyId3TagsPostProcessor sut,
			SourceFilePath sourceFile,
			MusicMirrorConfiguration configuration)
		{
			//arrange
			//act
			await sut.Transcode(CancellationToken.None, sourceFile.File, AudioFormat.Flac, configuration.TargetPath);
			//assert
			innerFileTranscoder.Verify(f => f.Transcode(It.IsAny<CancellationToken>(), sourceFile.File, AudioFormat.Flac, configuration.TargetPath));
		}
		public async Task Synchronize_ShouldCallAudioTagsSynchronizer(
			[Frozen]Mock<IFileTranscoder> innerFileTranscoder,
			[Frozen]Mock<IAudioTagsSynchronizer> audioTagsSynchronizer,
			CopyId3TagsPostProcessor sut,
			SourceFilePath sourceFile,
			TargetFilePath targetFile)
		{
			//arrange
			innerFileTranscoder.Setup(f => f.GetTranscodedFileName(sourceFile.File.Name)).Returns(targetFile.File.Name);			
			//act
			await sut.Transcode(It.IsAny<CancellationToken>(), sourceFile.File, AudioFormat.Flac, targetFile.File.Directory);
			//assert
			audioTagsSynchronizer.Verify(
				a => a.SynchronizeTags(
					It.IsAny<CancellationToken>(),
					sourceFile.File,
					It.Is((FileInfo f) => new FileInfoEqualityComparer().Equals(f, targetFile.File))));
        }
		public void Sut_ShouldBeIFileTranscoder(
		  CopyId3TagsPostProcessor sut)
		{
			sut.Should().BeAssignableTo<IFileTranscoder>();
		}