using System.Collections.Generic; using System.Threading; using MediaBrowser.Controller.Configuration; using MediaBrowser.MediaEncoding.Encoder; using MediaBrowser.Model.Globalization; using MediaBrowser.Model.IO; using MediaBrowser.Model.MediaInfo; using Microsoft.Extensions.Configuration; using Microsoft.Extensions.Logging; using Moq; using Xunit; namespace Jellyfin.MediaEncoding.Tests.Probing { public class ProbeExternalSourcesTests { [Fact] public void GetMediaInfo_Uses_UserAgent() { var encoder = new MediaEncoder( Mock.Of>(), Mock.Of(), Mock.Of(), Mock.Of(), Mock.Of(), new ConfigurationBuilder().Build(), Mock.Of()); var req = new MediaBrowser.Controller.MediaEncoding.MediaInfoRequest() { MediaSource = new MediaBrowser.Model.Dto.MediaSourceInfo { Path = "/path/to/stream", Protocol = MediaProtocol.Http, RequiredHttpHeaders = new Dictionary() { { "user_agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/530.35 (KHTML, like Gecko) Chrome/115.0.0.0 Safari/530.35" }, } }, ExtractChapters = false, MediaType = MediaBrowser.Model.Dlna.DlnaProfileType.Video, }; encoder.GetMediaInfo(req, CancellationToken.None); } } }