feat(linux): add graphical platform services
This commit is contained in:
parent
1628d9f587
commit
66f114b258
28 changed files with 1328 additions and 155 deletions
|
|
@ -0,0 +1,56 @@
|
|||
using AcDream.App.Platform;
|
||||
|
||||
namespace AcDream.App.Tests.Platform;
|
||||
|
||||
public sealed class GraphicalHostPlatformServicesTests
|
||||
{
|
||||
[Fact]
|
||||
public void CurrentPlatformOwnsPathsPacingAndNativeClosure()
|
||||
{
|
||||
GraphicalHostPlatformServices platform =
|
||||
GraphicalHostPlatformServices.Resolve();
|
||||
|
||||
Assert.NotNull(platform.Paths);
|
||||
Assert.NotNull(platform.FramePacingWaiters);
|
||||
Assert.Equal(3, platform.NativeDependencies.Count);
|
||||
Assert.All(
|
||||
platform.NativeDependencies,
|
||||
dependency =>
|
||||
{
|
||||
Assert.False(string.IsNullOrWhiteSpace(dependency.Feature));
|
||||
Assert.False(string.IsNullOrWhiteSpace(
|
||||
dependency.PublishedFileName));
|
||||
});
|
||||
|
||||
if (OperatingSystem.IsWindows())
|
||||
{
|
||||
Assert.Equal(
|
||||
GraphicalHostOperatingSystem.Windows,
|
||||
platform.OperatingSystem);
|
||||
Assert.StartsWith(
|
||||
"win-",
|
||||
platform.RuntimeIdentifier,
|
||||
StringComparison.Ordinal);
|
||||
Assert.Contains(
|
||||
platform.NativeDependencies,
|
||||
dependency =>
|
||||
dependency.PublishedFileName == "glfw3.dll");
|
||||
return;
|
||||
}
|
||||
|
||||
if (OperatingSystem.IsLinux())
|
||||
{
|
||||
Assert.Equal(
|
||||
GraphicalHostOperatingSystem.Linux,
|
||||
platform.OperatingSystem);
|
||||
Assert.Equal("linux-x64", platform.RuntimeIdentifier);
|
||||
Assert.Contains(
|
||||
platform.NativeDependencies,
|
||||
dependency =>
|
||||
dependency.PublishedFileName == "libglfw.so.3");
|
||||
return;
|
||||
}
|
||||
|
||||
throw new PlatformNotSupportedException();
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue