1# Copyright (C) 2022-2023 Free Software Foundation, Inc. 2# 3# This program is free software; you can redistribute it and/or modify 4# it under the terms of the GNU General Public License as published by 5# the Free Software Foundation; either version 3 of the License, or 6# (at your option) any later version. 7# 8# This program is distributed in the hope that it will be useful, 9# but WITHOUT ANY WARRANTY; without even the implied warranty of 10# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 11# GNU General Public License for more details. 12# 13# You should have received a copy of the GNU General Public License 14# along with this program. If not, see <http://www.gnu.org/licenses/>. 15 16# Check that FinishBreakpoints are deleted after use. 17 18load_lib gdb-python.exp 19 20standard_testfile 21 22if {[prepare_for_testing "failed to prepare" $testfile $srcfile]} { 23 return -1 24} 25 26# Skip all tests if Python scripting is not enabled. 27if { [skip_python_tests] } { continue } 28 29if ![runto_main] then { 30 return 0 31} 32 33# For remote host testing 34set pyfile [gdb_remote_download host ${srcdir}/${subdir}/${testfile}.py] 35 36gdb_test "python print(len(gdb.breakpoints()))" "1" "check default BP count" 37gdb_test "source $pyfile" ".*Python script imported.*" \ 38 "import python scripts" 39gdb_test "python print(len(gdb.breakpoints()))" "2" "check modified BP count" 40gdb_test "continue" "Breakpoint.*at.*" "run until FinishBreakpoint stops" 41gdb_test "python print(len(gdb.breakpoints()))" "2" "check BP count" 42