test(render): add connected remote-player shadow gate
This commit is contained in:
parent
e56ac57486
commit
a861510a37
4 changed files with 376 additions and 0 deletions
|
|
@ -12,6 +12,8 @@ public sealed class ConnectedRenderPackGateContractTests
|
|||
private const string SoakScript = "run-connected-r6-soak.ps1";
|
||||
private const string PackageLifecycleScript =
|
||||
"run-connected-render-pack-package-lifecycle.ps1";
|
||||
private const string RemotePlayerScript =
|
||||
"run-connected-render-pack-remote-player-gate.ps1";
|
||||
|
||||
[Fact]
|
||||
public void ScreenshotJsonCarriesAuthoritativeCasterClassCounters()
|
||||
|
|
@ -233,6 +235,40 @@ Remove-ConnectedGraphicalSessionConfig -State $state -Path $sessionConfigPath
|
|||
"checkpoint package-lifecycle");
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void ConnectedRemotePlayerGateUsesDistinctCharactersAndRequiresCasterEvidence()
|
||||
{
|
||||
string source = ReadTool(RemotePlayerScript);
|
||||
Assert.Contains("PrimaryCharacterIndex = 0", source, StringComparison.Ordinal);
|
||||
Assert.Contains("ObserverCharacterIndex = 1", source, StringComparison.Ordinal);
|
||||
Assert.Contains("Primary and observer character indexes must differ", source, StringComparison.Ordinal);
|
||||
Assert.Contains("Get-ConnectedGateBinaryIdentity", source, StringComparison.Ordinal);
|
||||
Assert.Contains("-CharacterIndex $ObserverCharacterIndex", source, StringComparison.Ordinal);
|
||||
Assert.Contains("-CharacterIndex $PrimaryCharacterIndex", source, StringComparison.Ordinal);
|
||||
Assert.Contains("[int]$classes.RemotePlayers -lt 1", source, StringComparison.Ordinal);
|
||||
Assert.Contains("both clients entered world with the same character identity", source, StringComparison.Ordinal);
|
||||
Assert.Contains("Restore-ConnectedRenderPackGateEnvironment $primaryState", source, StringComparison.Ordinal);
|
||||
Assert.Contains("Restore-ConnectedRenderPackGateEnvironment $observerState", source, StringComparison.Ordinal);
|
||||
|
||||
string observer = ReadTool("connected-render-pack-remote-observer.route.txt");
|
||||
AssertAppearsInOrder(
|
||||
observer,
|
||||
"command /teleloc 0x09040008",
|
||||
"wait materialized 1 90000",
|
||||
"input down MovementForward",
|
||||
"input up MovementForward",
|
||||
"checkpoint remote-observer");
|
||||
|
||||
string primary = ReadTool("connected-render-pack-remote-primary.route.txt");
|
||||
AssertAppearsInOrder(
|
||||
primary,
|
||||
"command /teleloc 0x09040008",
|
||||
"wait materialized 1 90000",
|
||||
"screenshot remote-player-before 15000",
|
||||
"screenshot remote-player-after 15000",
|
||||
"checkpoint remote-primary");
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void EveryConnectedScreenshotMustProveExactFailureFreeActivation()
|
||||
{
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue