mirror of
https://github.com/jellyfin/jellyfin.git
synced 2026-07-18 20:24:20 +01:00
* Add support for multi segment base urls
* Make baseurl case-insensitive
This commit is contained in:
45
tests/Jellyfin.Api.Tests/GetPathValueTests.cs
Normal file
45
tests/Jellyfin.Api.Tests/GetPathValueTests.cs
Normal file
@@ -0,0 +1,45 @@
|
||||
using MediaBrowser.Api;
|
||||
using MediaBrowser.Controller.Configuration;
|
||||
using MediaBrowser.Controller.Net;
|
||||
using MediaBrowser.Model.Configuration;
|
||||
using MediaBrowser.Model.Services;
|
||||
using Microsoft.Extensions.Logging.Abstractions;
|
||||
using Moq;
|
||||
using Xunit;
|
||||
|
||||
namespace Jellyfin.Api.Tests
|
||||
{
|
||||
public class GetPathValueTests
|
||||
{
|
||||
[Theory]
|
||||
[InlineData("https://localhost:8096/ScheduledTasks/1234/Triggers", "", 1, "1234")]
|
||||
[InlineData("https://localhost:8096/emby/ScheduledTasks/1234/Triggers", "", 1, "1234")]
|
||||
[InlineData("https://localhost:8096/mediabrowser/ScheduledTasks/1234/Triggers", "", 1, "1234")]
|
||||
[InlineData("https://localhost:8096/jellyfin/2/ScheduledTasks/1234/Triggers", "jellyfin/2", 1, "1234")]
|
||||
[InlineData("https://localhost:8096/jellyfin/2/emby/ScheduledTasks/1234/Triggers", "jellyfin/2", 1, "1234")]
|
||||
[InlineData("https://localhost:8096/jellyfin/2/mediabrowser/ScheduledTasks/1234/Triggers", "jellyfin/2", 1, "1234")]
|
||||
[InlineData("https://localhost:8096/JELLYFIN/2/ScheduledTasks/1234/Triggers", "jellyfin/2", 1, "1234")]
|
||||
[InlineData("https://localhost:8096/JELLYFIN/2/Emby/ScheduledTasks/1234/Triggers", "jellyfin/2", 1, "1234")]
|
||||
[InlineData("https://localhost:8096/JELLYFIN/2/MediaBrowser/ScheduledTasks/1234/Triggers", "jellyfin/2", 1, "1234")]
|
||||
public void GetPathValueTest(string path, string baseUrl, int index, string value)
|
||||
{
|
||||
var reqMock = Mock.Of<IRequest>(x => x.PathInfo == path);
|
||||
var conf = new ServerConfiguration()
|
||||
{
|
||||
BaseUrl = baseUrl
|
||||
};
|
||||
|
||||
var confManagerMock = Mock.Of<IServerConfigurationManager>(x => x.Configuration == conf);
|
||||
|
||||
var service = new BrandingService(
|
||||
new NullLogger<BrandingService>(),
|
||||
confManagerMock,
|
||||
Mock.Of<IHttpResultFactory>())
|
||||
{
|
||||
Request = reqMock
|
||||
};
|
||||
|
||||
Assert.Equal(value, service.GetPathValue(index).ToString());
|
||||
}
|
||||
}
|
||||
}
|
||||
20
tests/Jellyfin.Api.Tests/Jellyfin.Api.Tests.csproj
Normal file
20
tests/Jellyfin.Api.Tests/Jellyfin.Api.Tests.csproj
Normal file
@@ -0,0 +1,20 @@
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFramework>netcoreapp3.0</TargetFramework>
|
||||
<IsPackable>false</IsPackable>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.4.0" />
|
||||
<PackageReference Include="xunit" Version="2.4.1" />
|
||||
<PackageReference Include="xunit.runner.visualstudio" Version="2.4.1" />
|
||||
<PackageReference Include="coverlet.collector" Version="1.1.0" />
|
||||
<PackageReference Include="Moq" Version="4.13.1" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="../../MediaBrowser.Api/MediaBrowser.Api.csproj" />
|
||||
</ItemGroup>
|
||||
|
||||
</Project>
|
||||
Reference in New Issue
Block a user