fortrangoingonforty/fortsh / 6fbb02d

Browse files

Improve session reset and reduce sleep times in signals tests

Authored by espadonne
SHA
6fbb02de9027316b10a3168d41a4c64fb3a3cdf6
Parents
bd35d54
Tree
3111b9f

3 changed files

StatusFile+-
A tests/interactive/__pycache__/run_tests.cpython-314.pyc bin
M tests/interactive/run_tests.py 10 4
M tests/interactive/test_specs/signals_jobs.yaml 18 18
tests/interactive/__pycache__/run_tests.cpython-314.pycadded
Binary file changed.
tests/interactive/run_tests.pymodified
@@ -115,23 +115,29 @@ class YAMLTestRunner:
115115
             return
116116
 
117117
         try:
118
-            # Clear any pending input
118
+            # Clear any pending input/interrupt running command
119119
             self._current_session.send_key("C-c")
120
+            time.sleep(0.1)
121
+            self._current_session.send_key("C-c")
122
+            time.sleep(0.1)
120123
             self._current_session.send_key("C-u")
121124
             time.sleep(0.05)
122125
 
126
+            # Clear buffer before reset command
127
+            self._current_session.clear_buffer()
128
+
123129
             # Reset PS1 to default and use echo marker to sync
124130
             marker = f"RESET_{self._test_count}"
125131
             self._current_session.send_line(f"PS1='$ '; echo {marker}")
126132
 
127133
             # Wait for the marker to ensure we're at a clean state
128134
             try:
129
-                self._current_session.expect(marker, timeout=2)
135
+                self._current_session.expect(marker, timeout=3)
130136
             except:
131137
                 pass
132138
 
133
-            # Small delay then clear buffer
134
-            time.sleep(0.1)
139
+            # Wait for prompt after marker
140
+            time.sleep(0.2)
135141
             self._current_session.clear_buffer()
136142
         except:
137143
             pass
tests/interactive/test_specs/signals_jobs.yamlmodified
@@ -95,7 +95,7 @@ tests:
9595
   # =============================================================
9696
   - name: "Ctrl+Z suspends foreground job"
9797
     steps:
98
-      - send_line: "sleep 100"
98
+      - send_line: "sleep 10"
9999
       - wait: 0.3
100100
       - send_key: "C-z"
101101
       - send: "echo suspended"
@@ -105,7 +105,7 @@ tests:
105105
 
106106
   - name: "Ctrl+Z shows stopped message"
107107
     steps:
108
-      - send_line: "sleep 100"
108
+      - send_line: "sleep 10"
109109
       - wait: 0.3
110110
       - send_key: "C-z"
111111
     expect_output: "Stopped"
@@ -113,7 +113,7 @@ tests:
113113
 
114114
   - name: "Suspended job appears in jobs list"
115115
     steps:
116
-      - send_line: "sleep 100"
116
+      - send_line: "sleep 10"
117117
       - wait: 0.3
118118
       - send_key: "C-z"
119119
       - send_line: "jobs"
@@ -165,7 +165,7 @@ tests:
165165
 
166166
   - name: "jobs shows stopped jobs"
167167
     steps:
168
-      - send_line: "sleep 100"
168
+      - send_line: "sleep 10"
169169
       - wait: 0.3
170170
       - send_key: "C-z"
171171
       - send_line: "jobs"
@@ -192,7 +192,7 @@ tests:
192192
   # =============================================================
193193
   - name: "fg resumes stopped job"
194194
     steps:
195
-      - send_line: "sleep 100"
195
+      - send_line: "sleep 10"
196196
       - wait: 0.3
197197
       - send_key: "C-z"
198198
       - send_line: "fg"
@@ -205,7 +205,7 @@ tests:
205205
 
206206
   - name: "fg brings background job to foreground"
207207
     steps:
208
-      - send_line: "sleep 100 &"
208
+      - send_line: "sleep 10 &"
209209
       - send_line: "fg"
210210
       - wait: 0.3
211211
       - send_key: "C-c"
@@ -216,8 +216,8 @@ tests:
216216
 
217217
   - name: "fg with job number"
218218
     steps:
219
-      - send_line: "sleep 100 &"
220
-      - send_line: "sleep 100 &"
219
+      - send_line: "sleep 10 &"
220
+      - send_line: "sleep 10 &"
221221
       - send_line: "fg %1"
222222
       - wait: 0.3
223223
       - send_key: "C-c"
@@ -237,7 +237,7 @@ tests:
237237
   # =============================================================
238238
   - name: "bg resumes stopped job in background"
239239
     steps:
240
-      - send_line: "sleep 100"
240
+      - send_line: "sleep 10"
241241
       - wait: 0.3
242242
       - send_key: "C-z"
243243
       - send_line: "bg"
@@ -247,7 +247,7 @@ tests:
247247
 
248248
   - name: "bg with job number"
249249
     steps:
250
-      - send_line: "sleep 100"
250
+      - send_line: "sleep 10"
251251
       - wait: 0.3
252252
       - send_key: "C-z"
253253
       - send_line: "bg %1"
@@ -266,7 +266,7 @@ tests:
266266
   # =============================================================
267267
   - name: "%n refers to job number"
268268
     steps:
269
-      - send_line: "sleep 100 &"
269
+      - send_line: "sleep 10 &"
270270
       - send_line: "fg %1"
271271
       - wait: 0.3
272272
       - send_key: "C-c"
@@ -277,7 +277,7 @@ tests:
277277
 
278278
   - name: "%% refers to current job"
279279
     steps:
280
-      - send_line: "sleep 100 &"
280
+      - send_line: "sleep 10 &"
281281
       - send_line: "fg %%"
282282
       - wait: 0.3
283283
       - send_key: "C-c"
@@ -288,7 +288,7 @@ tests:
288288
 
289289
   - name: "%+ refers to current job"
290290
     steps:
291
-      - send_line: "sleep 100 &"
291
+      - send_line: "sleep 10 &"
292292
       - send_line: "fg %+"
293293
       - wait: 0.3
294294
       - send_key: "C-c"
@@ -299,7 +299,7 @@ tests:
299299
 
300300
   - name: "kill %n kills job"
301301
     steps:
302
-      - send_line: "sleep 100 &"
302
+      - send_line: "sleep 10 &"
303303
       - send_line: "kill %1"
304304
       - wait: 0.5
305305
       - send_line: "jobs"
@@ -313,7 +313,7 @@ tests:
313313
   # =============================================================
314314
   - name: "SIGTERM terminates process"
315315
     steps:
316
-      - send_line: "sleep 100 &"
316
+      - send_line: "sleep 10 &"
317317
       - send_line: "kill %1"
318318
       - wait: 0.5
319319
       - send_line: "jobs"
@@ -322,7 +322,7 @@ tests:
322322
 
323323
   - name: "SIGKILL force kills process"
324324
     steps:
325
-      - send_line: "sleep 100 &"
325
+      - send_line: "sleep 10 &"
326326
       - send_line: "kill -9 %1"
327327
       - wait: 0.5
328328
       - send_line: "jobs"
@@ -331,7 +331,7 @@ tests:
331331
 
332332
   - name: "SIGCONT continues stopped process"
333333
     steps:
334
-      - send_line: "sleep 100"
334
+      - send_line: "sleep 10"
335335
       - wait: 0.3
336336
       - send_key: "C-z"
337337
       - send_line: "kill -CONT %1"
@@ -364,7 +364,7 @@ tests:
364364
   # =============================================================
365365
   - name: "Disown removes job from table"
366366
     steps:
367
-      - send_line: "sleep 100 &"
367
+      - send_line: "sleep 10 &"
368368
       - send_line: "disown"
369369
       - send_line: "jobs"
370370
       - send: "echo disowned"