fix(portal): synchronize destination presentation state

This commit is contained in:
Erik 2026-07-16 21:17:13 +02:00
parent 4b1bceefbb
commit e95f55f25b
42 changed files with 2815 additions and 288 deletions

View file

@ -163,6 +163,22 @@ public class StreamingControllerDungeonGateTests
Assert.DoesNotContain(h.Loads, l => l.Kind == LandblockStreamJobKind.LoadFar);
}
[Fact]
public void PreCollapse_CenterResidentOnlyAsFarTier_EnqueuesPromotion()
{
var h = Make();
uint center = Encode(0, 7);
h.State.AddLandblock(MakeLb(0, 7), tier: LandblockStreamTier.Far);
h.Ctrl.PreCollapseToDungeon(0, 7);
Assert.False(h.State.IsNearTier(center));
Assert.Contains(h.Loads, load =>
load.Id == center && load.Kind == LandblockStreamJobKind.PromoteToNear);
Assert.DoesNotContain(h.Loads, load =>
load.Id == center && load.Kind == LandblockStreamJobKind.LoadNear);
}
[Fact]
public void InitializeKnownLoginCenter_DungeonPerformsOneCollapseWithoutReloadChurn()
{