Change method of loading .py files in Python tests
With my debug build of Python (--with-pydebug), many tests fails because of the same issue. Python scripts are loaded by the tests using this pattern: (gdb) python exec (open ('file.py').read ()) This causes Python to output this warning: __main__:1: ResourceWarning: unclosed file <_io.TextIOWrapper name='file.py' mode='r' encoding='ANSI_X3.4-1968'> and the test to fail because of that extra output. Instead of using the open + read + exec trick which leaks the file and causes the warning, why not just source the files? (gdb) source file.py This patch changes this, and standardizes the test names of the tests I touched to "load python file" (some of them were empty, others were overly complicated). gdb/testsuite/ChangeLog: * gdb.python/py-bad-printers.exp: Load python file using "source". * gdb.python/py-events.exp: Likewise. * gdb.python/py-evsignal.exp: Likewise. * gdb.python/py-evthreads.exp: Likewise. * gdb.python/py-frame-args.exp: Likewise. * gdb.python/py-framefilter-invalidarg.exp: Likewise. * gdb.python/py-framefilter-mi.exp: Likewise. * gdb.python/py-framefilter.exp: Likewise. * gdb.python/py-mi.exp: Likewise. * gdb.python/py-pp-maint.exp: Likewise. * gdb.python/py-pp-registration.exp: Likewise. * gdb.python/py-prettyprint.exp: Likewise. (run_lang_tests): Likewise. * gdb.python/py-typeprint.exp: Likewise.
This commit is contained in:
parent
e3ceef3544
commit
72ca041044
@ -1,3 +1,20 @@
|
||||
2017-01-26 Simon Marchi <simon.marchi@polymtl.ca>
|
||||
|
||||
* gdb.python/py-bad-printers.exp: Load python file using "source".
|
||||
* gdb.python/py-events.exp: Likewise.
|
||||
* gdb.python/py-evsignal.exp: Likewise.
|
||||
* gdb.python/py-evthreads.exp: Likewise.
|
||||
* gdb.python/py-frame-args.exp: Likewise.
|
||||
* gdb.python/py-framefilter-invalidarg.exp: Likewise.
|
||||
* gdb.python/py-framefilter-mi.exp: Likewise.
|
||||
* gdb.python/py-framefilter.exp: Likewise.
|
||||
* gdb.python/py-mi.exp: Likewise.
|
||||
* gdb.python/py-pp-maint.exp: Likewise.
|
||||
* gdb.python/py-pp-registration.exp: Likewise.
|
||||
* gdb.python/py-prettyprint.exp: Likewise.
|
||||
(run_lang_tests): Likewise.
|
||||
* gdb.python/py-typeprint.exp: Likewise.
|
||||
|
||||
2017-01-26 Luis Machado <lgustavo@codesourcery.com>
|
||||
|
||||
* lib/memory.exp: New file.
|
||||
|
@ -35,8 +35,7 @@ if ![runto_main ] then {
|
||||
set remote_python_file [gdb_remote_download host \
|
||||
${srcdir}/${subdir}/${testfile}.py]
|
||||
|
||||
gdb_test_no_output "python exec (open ('${remote_python_file}').read ())" \
|
||||
"load python file"
|
||||
gdb_test_no_output "source ${remote_python_file}" "load python file"
|
||||
|
||||
gdb_breakpoint [gdb_get_line_number "break here"]
|
||||
gdb_continue_to_breakpoint "break here" ".* break here .*"
|
||||
|
@ -43,7 +43,7 @@ clean_restart ${testfile}
|
||||
|
||||
if { [skip_python_tests] } { continue }
|
||||
|
||||
gdb_test_no_output "python exec (open ('${pyfile}').read ())" ""
|
||||
gdb_test_no_output "source ${pyfile}" "load python file"
|
||||
|
||||
gdb_test "test-objfile-events" "Object file events registered."
|
||||
|
||||
|
@ -31,7 +31,7 @@ clean_restart $testfile
|
||||
|
||||
if { [skip_python_tests] } { continue }
|
||||
|
||||
gdb_test_no_output "python exec (open ('${pyfile}').read ())" ""
|
||||
gdb_test_no_output "source ${pyfile}" "load python file"
|
||||
|
||||
gdb_test "test-events" "Event testers registered."
|
||||
gdb_test_no_output "set non-stop on"
|
||||
|
@ -36,7 +36,7 @@ clean_restart $testfile
|
||||
|
||||
if { [skip_python_tests] } { continue }
|
||||
|
||||
gdb_test_no_output "python exec (open ('${pyfile}').read ())" ""
|
||||
gdb_test_no_output "source ${pyfile}" "load python file"
|
||||
|
||||
gdb_test "test-events" "Event testers registered."
|
||||
gdb_test_no_output "set non-stop on"
|
||||
|
@ -29,8 +29,7 @@ if ![runto_main] {
|
||||
set remote_python_file [gdb_remote_download host \
|
||||
${srcdir}/${subdir}/${testfile}.py]
|
||||
|
||||
gdb_test_no_output "python exec (open ('${remote_python_file}').read ())" \
|
||||
"python exec (open ('[file tail ${remote_python_file}]').read ())"
|
||||
gdb_test_no_output "source ${remote_python_file}" "load python file"
|
||||
|
||||
gdb_breakpoint [gdb_get_line_number "break-here"]
|
||||
gdb_continue_to_breakpoint "break-here" ".* break-here .*"
|
||||
|
@ -61,7 +61,6 @@ gdb_test_no_output "set python print-stack full" \
|
||||
# Load global frame-filters
|
||||
set remote_python_file [gdb_remote_download host \
|
||||
${srcdir}/${subdir}/${testfile}.py]
|
||||
gdb_test_no_output "python exec (open ('${remote_python_file}').read ())" \
|
||||
"load python file"
|
||||
gdb_test_no_output "source ${remote_python_file}" "load python file"
|
||||
|
||||
gdb_test "bt" " in niam \\(argc=<error reading variable: dwarf expression stack underflow>, argv=0x\[0-9a-f\]+\\) at py-framefilter-invalidarg.c:\[0-9\]+" "bt full with filters"
|
||||
|
@ -46,8 +46,7 @@ mi_runto main
|
||||
|
||||
set remote_python_file [gdb_remote_download host ${srcdir}/${subdir}/${pyfile}]
|
||||
|
||||
mi_gdb_test "python exec (open ('${remote_python_file}').read ())" ".*\\^done." \
|
||||
"Load python file"
|
||||
mi_gdb_test "source ${remote_python_file}" ".*\\^done." "load python file"
|
||||
|
||||
# Multiple blocks test
|
||||
mi_continue_to_line [gdb_get_line_number {Inner test breakpoint} ${srcfile}] \
|
||||
|
@ -63,8 +63,7 @@ gdb_test_no_output "set python print-stack full" \
|
||||
# Load global frame-filters
|
||||
set remote_python_file [gdb_remote_download host \
|
||||
${srcdir}/${subdir}/${testfile}.py]
|
||||
gdb_test_no_output "python exec (open ('${remote_python_file}').read ())" \
|
||||
"load python file"
|
||||
gdb_test_no_output "source ${remote_python_file}" "load python file"
|
||||
|
||||
gdb_breakpoint [gdb_get_line_number "Backtrace end breakpoint"]
|
||||
gdb_breakpoint [gdb_get_line_number "Inner test breakpoint"]
|
||||
@ -253,7 +252,7 @@ gdb_test_no_output "set python print-stack full" \
|
||||
# Load global frame-filters
|
||||
set remote_python_file [gdb_remote_download host \
|
||||
${srcdir}/${subdir}/${testfile}.py]
|
||||
gdb_test_no_output "python exec (open ('${remote_python_file}').read ())" \
|
||||
gdb_test_no_output "source ${remote_python_file}" \
|
||||
"load python file for no debuginfo tests"
|
||||
|
||||
# Disable Reverse
|
||||
|
@ -44,7 +44,7 @@ mi_runto main
|
||||
|
||||
set remote_python_file [gdb_remote_download host ${srcdir}/${subdir}/${pyfile}]
|
||||
|
||||
mi_gdb_test "python exec (open ('${remote_python_file}').read ())" ""
|
||||
mi_gdb_test "source ${remote_python_file}" "load python file"
|
||||
|
||||
mi_continue_to_line [gdb_get_line_number {MI breakpoint here} ${srcfile}] \
|
||||
"step to breakpoint"
|
||||
|
@ -43,7 +43,7 @@ gdb_test "continue" ".*Breakpoint.*"
|
||||
|
||||
set python_file ${srcdir}/${subdir}/${testfile}.py
|
||||
|
||||
gdb_test_no_output "python exec (open ('${python_file}').read ())" ""
|
||||
gdb_test_no_output "source ${python_file}" "load python file"
|
||||
|
||||
gdb_test "info pretty-printer" \
|
||||
{.*function_lookup_test.*pp-test.*struct ss.*}
|
||||
|
@ -46,8 +46,7 @@ proc prepare_test { } {
|
||||
return 0
|
||||
}
|
||||
|
||||
gdb_test_no_output "python exec (open ('${remote_python_file}').read ())" \
|
||||
"read file"
|
||||
gdb_test_no_output "source ${remote_python_file}" "read file"
|
||||
|
||||
gdb_test_no_output "py progspace = gdb.current_progspace()"
|
||||
gdb_test_no_output "py my_pretty_printer1 = build_pretty_printer1()"
|
||||
|
@ -56,8 +56,7 @@ proc run_lang_tests {exefile lang} {
|
||||
set remote_python_file [gdb_remote_download host \
|
||||
${srcdir}/${subdir}/${testfile}.py]
|
||||
|
||||
gdb_test_no_output "python exec (open ('${remote_python_file}').read ())" \
|
||||
"python exec (open ('[file tail ${remote_python_file}]').read ())"
|
||||
gdb_test_no_output "source ${remote_python_file}" "load python file"
|
||||
|
||||
gdb_test "print ss" " = a=< a=<1> b=<$hex>> b=< a=<2> b=<$hex>>"
|
||||
gdb_test "print ssa\[1\]" " = a=< a=<5> b=<$hex>> b=< a=<6> b=<$hex>>"
|
||||
@ -137,8 +136,7 @@ if ![runto_main ] then {
|
||||
set remote_python_file [gdb_remote_download host \
|
||||
${srcdir}/${subdir}/${testfile}.py]
|
||||
|
||||
gdb_test_no_output "python exec (open ('${remote_python_file}').read ())" \
|
||||
"python exec (open ('[file tail ${remote_python_file}]').read ())"
|
||||
gdb_test_no_output "source ${remote_python_file}" "load python file"
|
||||
|
||||
gdb_breakpoint [gdb_get_line_number "eval-break"]
|
||||
gdb_continue_to_breakpoint "eval-break" ".* eval-break .*"
|
||||
|
@ -29,8 +29,7 @@ if { [skip_python_tests] } { continue }
|
||||
set remote_python_file [gdb_remote_download host \
|
||||
${srcdir}/${subdir}/${testfile}.py]
|
||||
|
||||
gdb_test_no_output "python exec (open ('${remote_python_file}').read ())" \
|
||||
"python exec (open ('[file tail ${remote_python_file}]').read ())"
|
||||
gdb_test_no_output "source ${remote_python_file}" "load python file"
|
||||
|
||||
cp_test_ptype_class s "basic test" "class" "templ<string>" {
|
||||
{ field public "T x;" }
|
||||
|
Loading…
Reference in New Issue
Block a user