This commit is contained in:
1 parent
439c1b9cdd
commit
850a04c4a0
1 file changed
+8
-5
@@ -326,14 +326,17 @@ class BasicAttackEventsNativeTest {
|
||||
games.dmg.fantasystick.session.EquipmentSessions sessions,
|
||||
FantasyStickLifecycleNativeTest.Actor actor) throws Exception {
|
||||
var transitioning = (java.util.Map<?, ?>) FantasyStickLifecycleNativeTest.Fixture.field(sessions, "transitioning");
|
||||
for (int i = 0; i < 80; i++) {
|
||||
var deadline = System.nanoTime() + java.util.concurrent.TimeUnit.SECONDS.toNanos(15);
|
||||
while (System.nanoTime() < deadline) {
|
||||
if (sessions.active(actor.core.id).isEmpty() && !transitioning.containsKey(actor.core.id)
|
||||
&& restoredExitProof(fixture, actor)) return;
|
||||
var task = fixture.tasks.poll(5, java.util.concurrent.TimeUnit.SECONDS);
|
||||
assertNotNull(task, "No exit callback before acknowledged receipt and native RESTORED marker");
|
||||
task.run();
|
||||
// The receipt worker can advance independently of queued main-thread callbacks.
|
||||
var task = fixture.tasks.poll(100, java.util.concurrent.TimeUnit.MILLISECONDS);
|
||||
if (task != null) task.run();
|
||||
}
|
||||
fail("Session exit did not clear owned native marker and acknowledged receipt before restart");
|
||||
fail("Session exit did not clear owned native marker and acknowledged receipt before restart; "
|
||||
+ "active=" + sessions.active(actor.core.id) + ", transitioning=" + transitioning.containsKey(actor.core.id)
|
||||
+ ", marker=" + actor.core.marker() + ", receipt_proof=" + restoredExitProof(fixture, actor));
|
||||
}
|
||||
|
||||
private static void awaitOrdinaryArrival(FantasyStickLifecycleNativeTest.Fixture fixture,
|
||||
|
||||
Reference in new issue
Block a user