diff --git a/src/NzbDrone.Core.Test/UpdateTests/UpdateServiceFixture.cs b/src/NzbDrone.Core.Test/UpdateTests/UpdateServiceFixture.cs index 794f5407d..c6d00fd26 100644 --- a/src/NzbDrone.Core.Test/UpdateTests/UpdateServiceFixture.cs +++ b/src/NzbDrone.Core.Test/UpdateTests/UpdateServiceFixture.cs @@ -69,6 +69,10 @@ namespace NzbDrone.Core.Test.UpdateTests .Setup(c => c.FolderWritable(It.IsAny())) .Returns(true); + Mocker.GetMock() + .Setup(v => v.FileExists(It.Is(s => s.EndsWith("Sonarr.Update.exe")))) + .Returns(true); + _sandboxFolder = Mocker.GetMock().Object.GetUpdateSandboxFolder(); } @@ -140,7 +144,7 @@ namespace NzbDrone.Core.Test.UpdateTests } [Test] - public void should_start_update_client() + public void should_start_update_client_if_updater_exists() { Subject.Execute(new ApplicationUpdateCommand()); @@ -148,6 +152,21 @@ namespace NzbDrone.Core.Test.UpdateTests .Verify(c => c.Start(It.IsAny(), It.Is(s => s.StartsWith("12")), null, null, null), Times.Once()); } + [Test] + public void should_return_with_warning_if_updater_doesnt_exists() + { + Mocker.GetMock() + .Setup(v => v.FileExists(It.Is(s => s.EndsWith("Sonarr.Update.exe")))) + .Returns(false); + + Subject.Execute(new ApplicationUpdateCommand()); + + Mocker.GetMock() + .Verify(c => c.Start(It.IsAny(), It.IsAny(), null, null, null), Times.Never()); + + ExceptionVerification.ExpectedWarns(1); + } + [Test] public void should_return_without_error_or_warnings_when_no_updates_are_available() {