1234567891011121314151617181920212223242526272829303132 |
- using AutoFixture;
- using AutoFixture.AutoMoq;
- using Emby.Server.Implementations.IO;
- using Emby.Server.Implementations.Library;
- using MediaBrowser.Model.IO;
- using MediaBrowser.Model.MediaInfo;
- using Xunit;
- namespace Jellyfin.Server.Implementations.Tests.Library
- {
- public class MediaSourceManagerTests
- {
- private readonly MediaSourceManager _mediaSourceManager;
- public MediaSourceManagerTests()
- {
- IFixture fixture = new Fixture().Customize(new AutoMoqCustomization { ConfigureMembers = true });
- fixture.Inject<IFileSystem>(fixture.Create<ManagedFileSystem>());
- _mediaSourceManager = fixture.Create<MediaSourceManager>();
- }
- [Theory]
- [InlineData(@"C:\mydir\myfile.ext", MediaProtocol.File)]
- [InlineData("/mydir/myfile.ext", MediaProtocol.File)]
- [InlineData("file:///mydir/myfile.ext", MediaProtocol.File)]
- [InlineData("http://example.com/stream.m3u8", MediaProtocol.Http)]
- [InlineData("https://example.com/stream.m3u8", MediaProtocol.Http)]
- [InlineData("rtsp://media.example.com:554/twister/audiotrack", MediaProtocol.Rtsp)]
- public void GetPathProtocol_ValidArg_Correct(string path, MediaProtocol expected)
- => Assert.Equal(expected, _mediaSourceManager.GetPathProtocol(path));
- }
- }
|