Skip to content

Commit 504fa73

Browse files
committed
!squash try to get more info
1 parent 90d0a71 commit 504fa73

File tree

1 file changed

+51
-18
lines changed

1 file changed

+51
-18
lines changed

src/libtmux/test/waiter.py

Lines changed: 51 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -221,14 +221,36 @@ class PaneContentWaiter:
221221
... .wait_for_text("hello world")
222222
... )
223223
224+
Wait for text with a longer timeout:
225+
226+
>>> pane.send_keys("echo 'Operation completed'", enter=True)
227+
>>> try:
228+
... result = (
229+
... expect(pane)
230+
... .with_timeout(1.0) # Reduce timeout for faster doctest execution
231+
... .without_raising() # Don't raise exceptions
232+
... .wait_for_text("Operation completed")
233+
... )
234+
... print(f"Result success: {result.success}")
235+
... except Exception as e:
236+
... print(f"Caught exception: {type(e).__name__}: {e}")
237+
Result success: True
238+
224239
Wait for regex pattern:
225240
226-
>>> pane.send_keys("echo 'Process 0 completed.", enter=True)
227-
>>> result = (
228-
... PaneContentWaiter(pane)
229-
... .with_timeout(10.0)
230-
... .wait_for_regex(r"Process \d+ completed")
231-
... )
241+
>>> pane.send_keys("echo 'Process 0 completed.'", enter=True)
242+
>>> try:
243+
... result = (
244+
... PaneContentWaiter(pane)
245+
... .with_timeout(1.0) # Reduce timeout for faster doctest execution
246+
... .without_raising() # Don't raise exceptions
247+
... .wait_for_regex(r"Process \d+ completed")
248+
... )
249+
... # Print debug info about the result for doctest
250+
... print(f"Result success: {result.success}")
251+
... except Exception as e:
252+
... print(f"Caught exception: {type(e).__name__}: {e}")
253+
Result success: True
232254
233255
Custom predicate:
234256
@@ -494,21 +516,32 @@ def expect(pane: Pane) -> PaneContentWaiter:
494516
495517
Wait for text with a longer timeout:
496518
497-
>>> pane.send_keys("echo 'Operation completed", enter=True)
498-
>>> result = (
499-
... expect(pane)
500-
... .with_timeout(10.0)
501-
... .wait_for_text("Operation completed")
502-
... )
503-
>>>
519+
>>> pane.send_keys("echo 'Operation completed'", enter=True)
520+
>>> try:
521+
... result = (
522+
... expect(pane)
523+
... .with_timeout(1.0) # Reduce timeout for faster doctest execution
524+
... .without_raising() # Don't raise exceptions
525+
... .wait_for_text("Operation completed")
526+
... )
527+
... print(f"Result success: {result.success}")
528+
... except Exception as e:
529+
... print(f"Caught exception: {type(e).__name__}: {e}")
530+
Result success: True
504531
505532
Wait for a regex match without raising exceptions on timeout:
506533
>>> pane.send_keys("echo 'Process 19 completed'", enter=True)
507-
>>> result = (
508-
... expect(pane)
509-
... .without_raising()
510-
... .wait_for_regex(r"Process \d+ completed")
511-
... )
534+
>>> try:
535+
... result = (
536+
... expect(pane)
537+
... .with_timeout(1.0) # Reduce timeout for faster doctest execution
538+
... .without_raising() # Don't raise exceptions
539+
... .wait_for_regex(r"Process \d+ completed")
540+
... )
541+
... print(f"Result success: {result.success}")
542+
... except Exception as e:
543+
... print(f"Caught exception: {type(e).__name__}: {e}")
544+
Result success: True
512545
"""
513546
return PaneContentWaiter(pane)
514547

0 commit comments

Comments
 (0)