diff --git a/src/NzbDrone.Core.Test/Download/DownloadClientTests/NzbgetTests/NzbgetFixture.cs b/src/NzbDrone.Core.Test/Download/DownloadClientTests/NzbgetTests/NzbgetFixture.cs index 48e477fee..7936a532e 100644 --- a/src/NzbDrone.Core.Test/Download/DownloadClientTests/NzbgetTests/NzbgetFixture.cs +++ b/src/NzbDrone.Core.Test/Download/DownloadClientTests/NzbgetTests/NzbgetFixture.cs @@ -332,5 +332,41 @@ namespace NzbDrone.Core.Test.Download.DownloadClientTests.NzbgetTests result.OutputPath.Should().Be(@"O:\mymount\Droned.S01E01.Pilot.1080p.WEB-DL-DRONE".AsOsAgnostic()); } + + [Test] + public void should_pass_test_if_version_high_enough() + { + Mocker.GetMock() + .Setup(v => v.GetVersion(It.IsAny())) + .Returns("12.0"); + + var error = Subject.Test(); + + error.IsValid.Should().BeTrue(); + } + + [Test] + public void should_fail_test_if_version_too_low() + { + Mocker.GetMock() + .Setup(v => v.GetVersion(It.IsAny())) + .Returns("11.0"); + + var error = Subject.Test(); + + error.IsValid.Should().BeFalse(); + } + + [Test] + public void should_ignore_version_test_if_development_version() + { + Mocker.GetMock() + .Setup(v => v.GetVersion(It.IsAny())) + .Returns("12.0-dev"); + + var error = Subject.Test(); + + error.IsValid.Should().BeTrue(); + } } } diff --git a/src/NzbDrone.Core/Download/Clients/Nzbget/Nzbget.cs b/src/NzbDrone.Core/Download/Clients/Nzbget/Nzbget.cs index cbdd3f438..3730c7567 100644 --- a/src/NzbDrone.Core/Download/Clients/Nzbget/Nzbget.cs +++ b/src/NzbDrone.Core/Download/Clients/Nzbget/Nzbget.cs @@ -256,7 +256,7 @@ namespace NzbDrone.Core.Download.Clients.Nzbget { var version = _proxy.GetVersion(Settings); - if (Version.Parse(version) < Version.Parse("12.0")) + if (!version.Contains('-') && Version.Parse(version) < Version.Parse("12.0")) { return new ValidationFailure(string.Empty, "Nzbget version too low, need 12.0 or higher"); }