diff --git a/CONTRIBUTORS.md b/CONTRIBUTORS.md index e44608135c..eccc3b0ceb 100644 --- a/CONTRIBUTORS.md +++ b/CONTRIBUTORS.md @@ -192,6 +192,7 @@ - [jaina heartles](https://github.com/heartles) - [oxixes](https://github.com/oxixes) - [elfalem](https://github.com/elfalem) + - [Kenneth Cochran](https://github.com/kennethcochran) - [benedikt257](https://github.com/benedikt257) - [revam](https://github.com/revam) diff --git a/tests/Jellyfin.LiveTv.Tests/Listings/ListingsManagerTests.cs b/tests/Jellyfin.LiveTv.Tests/Listings/ListingsManagerTests.cs new file mode 100644 index 0000000000..40934d9c6b --- /dev/null +++ b/tests/Jellyfin.LiveTv.Tests/Listings/ListingsManagerTests.cs @@ -0,0 +1,50 @@ +using System; +using Jellyfin.LiveTv.Configuration; +using Jellyfin.LiveTv.Listings; +using MediaBrowser.Common.Configuration; +using MediaBrowser.Controller.LiveTv; +using MediaBrowser.Model.LiveTv; +using MediaBrowser.Model.Tasks; +using Microsoft.Extensions.Logging; +using Moq; +using Xunit; + +namespace Jellyfin.LiveTv.Tests.Listings; + +public class ListingsManagerTests +{ + private readonly IConfigurationManager _config; + private readonly IListingsProvider[] _listingsProviders; + private readonly ILogger _logger; + private readonly ITaskManager _taskManager; + private readonly ITunerHostManager _tunerHostManager; + + public ListingsManagerTests() + { + _logger = Mock.Of>(); + _config = Mock.Of(); + _taskManager = Mock.Of(); + _tunerHostManager = Mock.Of(); + _listingsProviders = new[] { Mock.Of() }; + } + + [Fact] + public void DeleteListingsProvider_DeletesProvider() + { + // Arrange + var id = "MockId"; + var manager = new ListingsManager(_logger, _config, _taskManager, _tunerHostManager, _listingsProviders); + + Mock.Get(_config) + .Setup(x => x.GetConfiguration(It.IsAny())) + .Returns(new LiveTvOptions { ListingProviders = [new ListingsProviderInfo { Id = id }] }); + + // Act + manager.DeleteListingsProvider(id); + + // Assert + Assert.DoesNotContain( + _config.GetLiveTvConfiguration().ListingProviders, + p => p.Id.Equals(id, StringComparison.Ordinal)); + } +}