From b0faaef777414af07c13a59ab252aeda1370e774 Mon Sep 17 00:00:00 2001 From: Qstick Date: Sat, 20 Apr 2019 22:23:58 -0400 Subject: [PATCH] New: Unit Tests for MediaInfo Tokens --- .../FileNameBuilderFixture.cs | 56 ++++++++++++++++++- 1 file changed, 55 insertions(+), 1 deletion(-) diff --git a/src/NzbDrone.Core.Test/OrganizerTests/FileNameBuilderTests/FileNameBuilderFixture.cs b/src/NzbDrone.Core.Test/OrganizerTests/FileNameBuilderTests/FileNameBuilderFixture.cs index 0ad62ebc0..e556b939b 100644 --- a/src/NzbDrone.Core.Test/OrganizerTests/FileNameBuilderTests/FileNameBuilderFixture.cs +++ b/src/NzbDrone.Core.Test/OrganizerTests/FileNameBuilderTests/FileNameBuilderFixture.cs @@ -69,7 +69,16 @@ namespace NzbDrone.Core.Test.OrganizerTests.FileNameBuilderTests .With(e => e.MediumNumber = _medium.Number) .Build(); - _trackFile = new TrackFile { Quality = new QualityModel(Quality.MP3_256), ReleaseGroup = "LidarrTest" }; + _trackFile = Builder.CreateNew() + .With(e => e.Quality = new QualityModel(Quality.MP3_256)) + .With(e => e.ReleaseGroup = "LidarrTest") + .With(e => e.MediaInfo = new Parser.Model.MediaInfoModel { + AudioBitrate = 320, + AudioBits = 16, + AudioChannels = 2, + AudioFormat = "Flac Audio", + AudioSampleRate = 44100 + }).Build(); Mocker.GetMock() .Setup(v => v.Get(Moq.It.IsAny())) @@ -324,6 +333,51 @@ namespace NzbDrone.Core.Test.OrganizerTests.FileNameBuilderTests .Should().Be("MP3-256"); } + [Test] + public void should_replace_media_info_audio_codec() + { + _namingConfig.StandardTrackFormat = "{MediaInfo AudioCodec}"; + + Subject.BuildTrackFileName(new List { _track1 }, _artist, _album, _trackFile) + .Should().Be("FLAC"); + } + + [Test] + public void should_replace_media_info_audio_bitrate() + { + _namingConfig.StandardTrackFormat = "{MediaInfo AudioBitRate}"; + + Subject.BuildTrackFileName(new List { _track1 }, _artist, _album, _trackFile) + .Should().Be("320 kbps"); + } + + [Test] + public void should_replace_media_info_audio_channels() + { + _namingConfig.StandardTrackFormat = "{MediaInfo AudioChannels}"; + + Subject.BuildTrackFileName(new List { _track1 }, _artist, _album, _trackFile) + .Should().Be("2.0"); + } + + [Test] + public void should_replace_media_info_bits_per_sample() + { + _namingConfig.StandardTrackFormat = "{MediaInfo AudioBitsPerSample}"; + + Subject.BuildTrackFileName(new List { _track1 }, _artist, _album, _trackFile) + .Should().Be("16bit"); + } + + [Test] + public void should_replace_media_info_sample_rate() + { + _namingConfig.StandardTrackFormat = "{MediaInfo AudioSampleRate}"; + + Subject.BuildTrackFileName(new List { _track1 }, _artist, _album, _trackFile) + .Should().Be("44kHz"); + } + [Test] public void should_replace_all_contents_in_pattern() {