Following on from the previous commit, in this commit I am updating
the test script gdb.tui/tui-nl-filtered-output.exp to take account of
the changes in commit:
commit
9162a27c5f5828240b53379d735679e2a69a9f41
Date: Tue Nov 13 11:59:03 2018 -0700
Change gdb test suite's TERM setting
In the above commit the TERM environment variable was changed to be
'dumb' by default, which means that tests, that previously activated
tui mode, no longer do unless TERM is set to 'ansi'.
As the gdb.tui/tui-nl-filtered-output.exp script didn't do this, the
test stopped working. As the expect patterns in this script were
pretty generic no tests actually started failing, and we never
noticed.
In this commit I update the test script to correctly activate our
terminal emulator, the test continues to pass after this update, but
now we are testing in tui mode.
require allow_tui_tests
-gdb_exit
-gdb_start
-
-# Enable the TUI.
-
-set test "tui enable"
-gdb_test_multiple "tui enable" $test {
- -re "$gdb_prompt $" {
- pass $test
- }
-}
-
-# Make sure filtering/pagination is enabled, but make the window high
-# enough that we don't paginate in practice.
-gdb_test_no_output "set pagination on"
-gdb_test_no_output "set height 2000"
-
-gdb_test \
- {printf "hello\nworld\n"} \
- "hello\r\nworld" \
- "correct line breaks"
+tuiterm_env
+
+# Setup and enter TUI mode.
+Term::clean_restart 24 80
+Term::enter_tui
+
+# Send the command, and check the output is correctly split over
+# multiple lines.
+Term::command \
+ {printf "hello\nworld\n"}
+Term::check_region_contents "check printf output" \
+ 0 16 80 4 [multi_line \
+ "$gdb_prompt printf \"hello\\\\nworld\\\\n\"\\s+" \
+ "hello\\s+" \
+ "world\\s+" \
+ "$gdb_prompt\\s+"]