public async Task Synchronize_ShouldCallSynchronize(
			[Frozen]Mock<IAsyncFileOperations> fileOperations,
			[Frozen]Mock<IAudioTagReader> audioTagReader,
			[Frozen]Mock<IAudioTagWriter> audioTagWriter,
			AudioTagsSynchronizer sut,
			SourceFilePath sourceFile,
			TargetFilePath targetFile,
			Stream sourceStream,
			Stream targetStream,
            Tag tag)
		{
			//arrange
			fileOperations.Setup(f => f.OpenRead(sourceFile.ToString())).ReturnsTask(sourceStream);
			fileOperations.Setup(f => f.Open(targetFile.ToString(), Hanno.IO.FileMode.Open, Hanno.IO.FileAccess.ReadWrite)).ReturnsTask(targetStream);
			audioTagReader.Setup(a => a.ReadTags(It.IsAny<CancellationToken>(), sourceStream)).ReturnsTask(tag);
			//act
			await sut.SynchronizeTags(CancellationToken.None, sourceFile.File, targetFile.File);
			//assert
			audioTagWriter.Verify(a => a.WriteTags(It.IsAny<CancellationToken>(), targetStream, tag));
        }
		public void Sut_ShouldBeIAudioTagsSynchronizer(
			AudioTagsSynchronizer sut)
		{
			sut.Should().BeAssignableTo<IAudioTagsSynchronizer>();
		}