Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 6 additions & 3 deletions experiments/shell/run.py
Original file line number Diff line number Diff line change
Expand Up @@ -425,10 +425,14 @@ def close(self, record=None):
self.handle = None
gone = desktop_gone(self.name)
if gone or record is None:
# #160: record the first check even on success so every run carries a
# sample instead of only the failing ones.
if record is not None:
record["desktop_close_settle"] = [{"elapsed_ms": 0, "gone": gone}]
return gone
# A desktop handle outlives its owner only while some child still holds
# one; settle briefly and keep the attempts so a failure shows whether the
# desktop was still held or never closed. Nothing is added on success.
# desktop was still held or never closed.
attempts = [{"elapsed_ms": 0, "gone": False}]
began = time.monotonic()
for _ in range(10):
Expand All @@ -437,8 +441,7 @@ def close(self, record=None):
attempts.append({"elapsed_ms": int((time.monotonic() - began) * 1000), "gone": gone})
if gone:
break
if not gone:
record["desktop_close_settle"] = attempts
record["desktop_close_settle"] = attempts
return gone


Expand Down
Loading