From 4aa8e6c2387e796649279c2190cd499b579d028c Mon Sep 17 00:00:00 2001 From: Simon Marchi Date: Wed, 12 Sep 2018 18:27:57 -0400 Subject: [PATCH] python: Add tests for trying to use an invalid Inferior object This patch adds tests for trying to use property or methods on a gdb.Inferior object that represents an inferior that does not exist anymore. We expect an exception to be thrown. gdb/testsuite/ChangeLog: * gdb.python/py-inferior.exp: Test using an invalid gdb.Inferior object. --- gdb/testsuite/ChangeLog | 5 +++++ gdb/testsuite/gdb.python/py-inferior.exp | 13 +++++++++++++ 2 files changed, 18 insertions(+) diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index db5369de651..949f1ae210a 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2018-09-12 Simon Marchi + + * gdb.python/py-inferior.exp: Test using an invalid gdb.Inferior + object. + 2018-09-12 Alan Hayward * lib/gdb.exp (gdb_can_simple_compile): Add proc. diff --git a/gdb/testsuite/gdb.python/py-inferior.exp b/gdb/testsuite/gdb.python/py-inferior.exp index a943d5f214e..055dd87c6d8 100644 --- a/gdb/testsuite/gdb.python/py-inferior.exp +++ b/gdb/testsuite/gdb.python/py-inferior.exp @@ -253,6 +253,19 @@ with_test_prefix "is_valid" { gdb_test "python print (my_inferior_count)" "1" \ "test inferior-deleted event handler" + + # Test that other properties and methods handle the removed inferior + # correctly. + gdb_test "python print (inf_list\[1\].num)" \ + "RuntimeError: Inferior no longer exists.*" + gdb_test "python print (inf_list\[1\].pid)" \ + "RuntimeError: Inferior no longer exists.*" + gdb_test "python print (inf_list\[1\].was_attached)" \ + "RuntimeError: Inferior no longer exists.*" + gdb_test "python print (inf_list\[1\].threads ())" \ + "RuntimeError: Inferior no longer exists.*" + gdb_test "python print (inf_list\[1\].thread_from_thread_handle (1))" \ + "RuntimeError: Inferior no longer exists.*" } # Test gdb.selected_inferior() -- 2.30.2