Inheritance: BaseSettingsViewModel
        public void PostCouchPotatoSettingsReturnsDefaultView()
        {
            var expectedDto = new CouchPotatoSettingsDto
            {
                Enabled = true,
                Id = 2,
                IpAddress = "192",
                ApiKey = "pass",
                Port = 2,
                ShowOnDashboard = true,
                Password = "******",
                Username = "******"
            };
            var settingsMock = new Mock<ISettingsService<CouchPotatoSettingsDto>>();

            settingsMock.Setup(x => x.GetSettings()).Returns(expectedDto);
            settingsMock.Setup(x => x.SaveSettings(It.IsAny<CouchPotatoSettingsDto>())).Returns(true);

            _controller = new SettingsController(null, null, null, settingsMock.Object, null, null, null, null, null, Logger);

            var model = new CouchPotatoSettingsViewModel();
            _controller.WithCallTo(x => x.CouchPotatoSettings(model)).ShouldRedirectTo(c => c.CouchPotatoSettings);
            settingsMock.Verify(x => x.SaveSettings(It.IsAny<CouchPotatoSettingsDto>()), Times.Once);
        }
        public void PostCouchPotatoSettingsCouldNotSaveToDb()
        {
            var expectedDto = new CouchPotatoSettingsDto { Enabled = true, Id = 2, IpAddress = "192", ApiKey = "pass", Port = 2, ShowOnDashboard = true };
            var settingsMock = new Mock<ISettingsService<CouchPotatoSettingsDto>>();

            settingsMock.Setup(x => x.GetSettings()).Returns(expectedDto);
            settingsMock.Setup(x => x.SaveSettings(It.IsAny<CouchPotatoSettingsDto>())).Returns(false);

            _controller = new SettingsController(null, null, null, settingsMock.Object, null, null, null, null, null, Logger);

            var model = new CouchPotatoSettingsViewModel();
            _controller.WithCallTo(x => x.CouchPotatoSettings(model)).ShouldRenderView("Error");
            settingsMock.Verify(x => x.SaveSettings(It.IsAny<CouchPotatoSettingsDto>()), Times.Once);
        }