using System; using System.Linq; using System.Threading; using MediaBrowser.Common.Configuration; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.Movies; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Configuration; using MediaBrowser.Model.Entities; using MediaBrowser.Model.Providers; using MediaBrowser.Providers.Plugins.Tmdb.Movies; using MediaBrowser.XbmcMetadata.Parsers; using Microsoft.Extensions.Logging.Abstractions; using Moq; using Xunit; namespace Jellyfin.XbmcMetadata.Tests.Parsers { public class MovieNfoParserTests { private readonly MovieNfoParser _parser; public MovieNfoParserTests() { var providerManager = new Mock(); var tmdbExternalId = new TmdbMovieExternalId(); var externalIdInfo = new ExternalIdInfo(tmdbExternalId.ProviderName, tmdbExternalId.Key, tmdbExternalId.Type, tmdbExternalId.UrlFormatString); providerManager.Setup(x => x.GetExternalIdInfos(It.IsAny())) .Returns(new[] { externalIdInfo }); var config = new Mock(); config.Setup(x => x.GetConfiguration(It.IsAny())) .Returns(new XbmcMetadataOptions()); _parser = new MovieNfoParser(new NullLogger(), config.Object, providerManager.Object); } [Fact] public void Fetch_Valid_Succes() { var result = new MetadataResult