gdb/testsuite/tui: Split enter_tui into two procs
authorAndrew Burgess <andrew.burgess@embecosm.com>
Tue, 7 Jan 2020 00:30:35 +0000 (00:30 +0000)
committerAndrew Burgess <andrew.burgess@embecosm.com>
Thu, 9 Jan 2020 23:11:43 +0000 (23:11 +0000)
Split Term::enter_tui into two procedures, a core which does the
setup, but doesn't actually enable tui mode, and the old enter_tui
that calls the new core, and then enables tui mode.

This is going to be useful in a later commit.

gdb/testsuite/ChangeLog:

* lib/tuiterm.exp (Term::prepare_for_tui): New proc.
(Term::enter_tui): Use Term::prepare_for_tui.

Change-Id: I501dfb2ddaa4a4e7246a5ad319ab428e4f42b3af

gdb/testsuite/ChangeLog
gdb/testsuite/lib/tuiterm.exp

index 6ca5aefc373c171942079adc86625868effd31cf..7d8c8d0b7c5f9f831e80863c6447a3889f256866 100644 (file)
@@ -1,3 +1,8 @@
+2020-01-09  Andrew Burgess  <andrew.burgess@embecosm.com>
+
+       * lib/tuiterm.exp (Term::prepare_for_tui): New proc.
+       (Term::enter_tui): Use Term::prepare_for_tui.
+
 2020-01-09  Andrew Burgess  <andrew.burgess@embecosm.com>
 
        * lib/tuiterm.exp (Term::dump_screen): Always dump the screen when
index 36e034a36390fab1891ee4d0ecca4f48703e9999..9ac599b6f2d333cc28d06d32f743a8254c80c058 100644 (file)
@@ -462,15 +462,25 @@ namespace eval Term {
        }
     }
 
-    # Start the TUI.  Returns 1 on success, 0 if TUI tests should be
-    # skipped.
-    proc enter_tui {} {
+    # Setup ready for starting the tui, but don't actually start it.
+    # Returns 1 on success, 0 if TUI tests should be skipped.
+    proc prepare_for_tui {} {
        if {[skip_tui_tests]} {
            return 0
        }
 
        gdb_test_no_output "set tui border-kind ascii"
        gdb_test_no_output "maint set tui-resize-message on"
+       return 1
+    }
+
+    # Start the TUI.  Returns 1 on success, 0 if TUI tests should be
+    # skipped.
+    proc enter_tui {} {
+       if {![prepare_for_tui]} {
+           return 0
+       }
+
        command "tui enable"
        return 1
     }