]> git.sur5r.net Git - u-boot/blobdiff - test/py/u_boot_console_exec_attach.py
am335x, shc: kconfig: Fix misspelled choice default
[u-boot] / test / py / u_boot_console_exec_attach.py
index 0ca9e7c178ec47e06d0b98f49edf3b61b84c5132..445b58dda6121f85eb7bc3bb3fbdc6408e8a1fb2 100644 (file)
@@ -11,15 +11,15 @@ from u_boot_spawn import Spawn
 from u_boot_console_base import ConsoleBase
 
 class ConsoleExecAttach(ConsoleBase):
-    '''Represents a physical connection to a U-Boot console, typically via a
+    """Represents a physical connection to a U-Boot console, typically via a
     serial port. This implementation executes a sub-process to attach to the
     console, expecting that the stdin/out of the sub-process will be forwarded
     to/from the physical hardware. This approach isolates the test infra-
     structure from the user-/installation-specific details of how to
-    communicate with, and the identity of, serial ports etc.'''
+    communicate with, and the identity of, serial ports etc."""
 
     def __init__(self, log, config):
-        '''Initialize a U-Boot console connection.
+        """Initialize a U-Boot console connection.
 
         Args:
             log: A multiplexed_log.Logfile instance.
@@ -27,7 +27,7 @@ class ConsoleExecAttach(ConsoleBase):
 
         Returns:
             Nothing.
-        '''
+        """
 
         # The max_fifo_fill value might need tweaking per-board/-SoC?
         # 1 would be safe anywhere, but is very slow (a pexpect issue?).
@@ -35,14 +35,16 @@ class ConsoleExecAttach(ConsoleBase):
         # HW flow control would mean this could be infinite.
         super(ConsoleExecAttach, self).__init__(log, config, max_fifo_fill=16)
 
-        self.log.action('Flashing U-Boot')
-        cmd = ['u-boot-test-flash', config.board_type, config.board_identity]
-        runner = self.log.get_runner(cmd[0], sys.stdout)
-        runner.run(cmd)
-        runner.close()
+        with self.log.section('flash'):
+            self.log.action('Flashing U-Boot')
+            cmd = ['u-boot-test-flash', config.board_type, config.board_identity]
+            runner = self.log.get_runner(cmd[0], sys.stdout)
+            runner.run(cmd)
+            runner.close()
+            self.log.status_pass('OK')
 
     def get_spawn(self):
-        '''Connect to a fresh U-Boot instance.
+        """Connect to a fresh U-Boot instance.
 
         The target board is reset, so that U-Boot begins running from scratch.
 
@@ -51,15 +53,19 @@ class ConsoleExecAttach(ConsoleBase):
 
         Returns:
             A u_boot_spawn.Spawn object that is attached to U-Boot.
-        '''
+        """
 
         args = [self.config.board_type, self.config.board_identity]
         s = Spawn(['u-boot-test-console'] + args)
 
-        self.log.action('Resetting board')
-        cmd = ['u-boot-test-reset'] + args
-        runner = self.log.get_runner(cmd[0], sys.stdout)
-        runner.run(cmd)
-        runner.close()
+        try:
+            self.log.action('Resetting board')
+            cmd = ['u-boot-test-reset'] + args
+            runner = self.log.get_runner(cmd[0], sys.stdout)
+            runner.run(cmd)
+            runner.close()
+        except:
+            s.close()
+            raise
 
         return s