Expand Aetheria managed state facade

This commit is contained in:
Meta Vens 2026-06-28 01:32:22 +01:00
commit e1d25705e5
4 changed files with 78 additions and 3 deletions

View file

@ -167,10 +167,15 @@ public class DaemonRuntimeDocumentTests
.GetResult();
var currentEntity = client.Aetheria().Current.Entity.LatestAsync().GetAwaiter().GetResult();
var latestFrame = client.Aetheria().LatestFrame.LatestAsync().GetAwaiter().GetResult();
var currentEntityByType = client.Aetheria()
.LatestAsync<AetheriaRuntimeCurrentEntityDocument>()
.GetAwaiter()
.GetResult();
var latestFrameByType = client.Aetheria()
.LatestAsync<AetheriaRuntimeDaemonFrameDocument>()
.GetAwaiter()
.GetResult();
var currentEntityFromClientType = client
.LatestAsync<AetheriaRuntimeCurrentEntityDocument>()
.GetAwaiter()
@ -186,6 +191,7 @@ public class DaemonRuntimeDocumentTests
Assert.AreEqual("aetheria.current.entity", client.State.Current.Entity.DocumentId);
Assert.AreSame(client.State.Current.Entity, client.State.Document<AetheriaRuntimeCurrentEntityDocument>());
Assert.AreSame(client.State.ZoneRender, client.Document<AetheriaRuntimeZoneRenderDocument>());
Assert.AreSame(client.State.LatestFrame, client.Document<AetheriaRuntimeDaemonFrameDocument>());
Assert.AreSame(
client.State.Current.Entity,
client.State.DocumentBySchema(AetheriaRuntimeDaemonSchemas.CurrentEntity));
@ -202,6 +208,9 @@ public class DaemonRuntimeDocumentTests
out var sectorMapBySchema));
Assert.AreSame(client.State.SectorMap, sectorMapBySchema);
Assert.AreEqual(AetheriaRuntimeDaemonSchemas.CurrentEntity, currentEntity.Schema);
Assert.AreEqual(AetheriaRuntimeDaemonSchemas.Frame, latestFrame.Schema);
Assert.AreEqual(frame.FrameId, latestFrame.FrameId);
Assert.AreEqual(frame.FrameId, latestFrameByType.FrameId);
Assert.AreEqual("zone.0.entity.0", currentEntity.EntityKey);
Assert.AreEqual(0, currentEntity.EntityIndex);
Assert.AreEqual("Player", currentEntity.Entity?.DisplayName);

View file

@ -77,11 +77,20 @@ public class StarbridgePlayerSeatDocumentTests
.GetResult();
var handle = client.Document<AetheriaRuntimeStarbridgePlayerSeatDocument>(
AetheriaRuntimeVerseRecordKeys.StarbridgePlayerSeat(seat.SeatId));
var aetheriaSeat = client
.Aetheria()
.Starbridge
.PlayerSeat(seat.SeatId);
using var reactive = handle.Reactive();
using var aetheriaReactive = aetheriaSeat.Reactive();
Assert.AreEqual("seat-support", handle.Latest().SeatId);
Assert.AreEqual("seat-support", aetheriaSeat.Latest().SeatId);
Assert.AreEqual("item:cockpit:support", reactive.Current.CockpitItemKey);
Assert.AreEqual("item:cockpit:support", aetheriaReactive.Current.CockpitItemKey);
Assert.AreEqual("entity:pod:support", reactive.Current.EscapePodEntityKey);
Assert.AreEqual("entity:pod:support", aetheriaReactive.Current.EscapePodEntityKey);
Assert.AreEqual("unity-support", reactive.Document.Context.RuntimeId);
Assert.AreEqual("unity-support", aetheriaReactive.Document.Context.RuntimeId);
}
}