Files
jellyfin/tests/Jellyfin.Providers.Tests/ExternalId/ComicVineExternalUrlProviderTests.cs

57 lines
1.6 KiB
C#

using MediaBrowser.Controller.Entities;
using MediaBrowser.Controller.Entities.TV;
using MediaBrowser.Model.Entities;
using MediaBrowser.Providers.Books.ComicVine;
using Xunit;
namespace Jellyfin.Providers.Tests.ExternalId
{
public sealed class ComicVineExternalUrlProviderTests
{
private readonly ComicVineExternalUrlProvider _provider = new();
[Fact]
public void GetExternalUrls_PersonWithComicVineId_ReturnsCorrectUrl()
{
var person = new Person();
person.SetProviderId("ComicVine", "person/4005-1234");
var urls = _provider.GetExternalUrls(person);
Assert.Contains("https://comicvine.gamespot.com/person/4005-1234", urls);
}
[Fact]
public void GetExternalUrls_BookWithComicVineId_ReturnsCorrectUrl()
{
var book = new Book();
book.SetProviderId("ComicVine", "issue/4000-5678");
var urls = _provider.GetExternalUrls(book);
Assert.Contains("https://comicvine.gamespot.com/issue/4000-5678", urls);
}
[Fact]
public void GetExternalUrls_PersonWithNoComicVineId_ReturnsNoUrl()
{
var person = new Person();
var urls = _provider.GetExternalUrls(person);
Assert.Empty(urls);
}
[Fact]
public void GetExternalUrls_NonSupportedItemWithComicVineId_ReturnsNoUrl()
{
var series = new Series();
series.SetProviderId("ComicVine", "volume/4050-9999");
var urls = _provider.GetExternalUrls(series);
Assert.Empty(urls);
}
}
}