test: restore timeout after bootmenu unit test
authorHeinrich Schuchardt <heinrich.schuchardt@canonical.com>
Mon, 9 May 2022 19:59:13 +0000 (21:59 +0200)
committerHeinrich Schuchardt <heinrich.schuchardt@canonical.com>
Sat, 28 May 2022 08:59:27 +0000 (10:59 +0200)
In the bootmenu unit test the console timeout is set to 500 ms.
Other tests rely on the original timeout. Ensure that the original value
is restored.

Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
test/py/tests/test_bootmenu.py

index b4baa53..70f51de 100644 (file)
@@ -11,36 +11,36 @@ def test_bootmenu(u_boot_console):
     u_boot_console -- U-Boot console
     """
 
-    u_boot_console.p.timeout = 500
-    u_boot_console.run_command('setenv bootmenu_default 1')
-    u_boot_console.run_command('setenv bootmenu_0 test 1=echo ok 1')
-    u_boot_console.run_command('setenv bootmenu_1 test 2=echo ok 2')
-    u_boot_console.run_command('setenv bootmenu_2 test 3=echo ok 3')
-    u_boot_console.run_command('bootmenu 2', wait_for_prompt=False)
-    for i in ('U-Boot Boot Menu', 'test 1', 'test 2', 'test 3', 'autoboot'):
-        u_boot_console.p.expect([i])
-    # Press enter key to execute default entry
-    response = u_boot_console.run_command(cmd='\x0d', wait_for_echo=False, send_nl=False)
-    assert 'ok 2' in response
-    u_boot_console.run_command('bootmenu 2', wait_for_prompt=False)
-    u_boot_console.p.expect(['autoboot'])
-    # Press up key to select prior entry followed by the enter key
-    response = u_boot_console.run_command(cmd='\x1b\x5b\x41\x0d', wait_for_echo=False,
-                                          send_nl=False)
-    assert 'ok 1' in response
-    u_boot_console.run_command('bootmenu 2', wait_for_prompt=False)
-    u_boot_console.p.expect(['autoboot'])
-    # Press down key to select next entry followed by the enter key
-    response = u_boot_console.run_command(cmd='\x1b\x5b\x42\x0d', wait_for_echo=False,
-                                          send_nl=False)
-    assert 'ok 3' in response
-    u_boot_console.run_command('bootmenu 2; echo rc:$?', wait_for_prompt=False)
-    u_boot_console.p.expect(['autoboot'])
-    # Press the escape key
-    response = u_boot_console.run_command(cmd='\x1b', wait_for_echo=False, send_nl=False)
-    assert 'ok' not in response
-    assert 'rc:0' in response
-    u_boot_console.run_command('setenv bootmenu_default')
-    u_boot_console.run_command('setenv bootmenu_0')
-    u_boot_console.run_command('setenv bootmenu_1')
-    u_boot_console.run_command('setenv bootmenu_2')
+    with u_boot_console.temporary_timeout(500):
+        u_boot_console.run_command('setenv bootmenu_default 1')
+        u_boot_console.run_command('setenv bootmenu_0 test 1=echo ok 1')
+        u_boot_console.run_command('setenv bootmenu_1 test 2=echo ok 2')
+        u_boot_console.run_command('setenv bootmenu_2 test 3=echo ok 3')
+        u_boot_console.run_command('bootmenu 2', wait_for_prompt=False)
+        for i in ('U-Boot Boot Menu', 'test 1', 'test 2', 'test 3', 'autoboot'):
+            u_boot_console.p.expect([i])
+        # Press enter key to execute default entry
+        response = u_boot_console.run_command(cmd='\x0d', wait_for_echo=False, send_nl=False)
+        assert 'ok 2' in response
+        u_boot_console.run_command('bootmenu 2', wait_for_prompt=False)
+        u_boot_console.p.expect(['autoboot'])
+        # Press up key to select prior entry followed by the enter key
+        response = u_boot_console.run_command(cmd='\x1b\x5b\x41\x0d', wait_for_echo=False,
+                                              send_nl=False)
+        assert 'ok 1' in response
+        u_boot_console.run_command('bootmenu 2', wait_for_prompt=False)
+        u_boot_console.p.expect(['autoboot'])
+        # Press down key to select next entry followed by the enter key
+        response = u_boot_console.run_command(cmd='\x1b\x5b\x42\x0d', wait_for_echo=False,
+                                              send_nl=False)
+        assert 'ok 3' in response
+        u_boot_console.run_command('bootmenu 2; echo rc:$?', wait_for_prompt=False)
+        u_boot_console.p.expect(['autoboot'])
+        # Press the escape key
+        response = u_boot_console.run_command(cmd='\x1b', wait_for_echo=False, send_nl=False)
+        assert 'ok' not in response
+        assert 'rc:0' in response
+        u_boot_console.run_command('setenv bootmenu_default')
+        u_boot_console.run_command('setenv bootmenu_0')
+        u_boot_console.run_command('setenv bootmenu_1')
+        u_boot_console.run_command('setenv bootmenu_2')