1 # Copyright
2023-2024 Free Software Foundation
, Inc.
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.
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.
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
/>.
16 # Test
'sources' and
'loadedSources'.
18 require allow_dap_tests
20 load_lib dap
-support.exp
24 if {[build_executable $
{testfile
}.exp $testfile
] == -1} {
28 if {[dap_initialize
] == ""} {
32 if {[dap_launch $testfile stop_at_main
1] == ""} {
36 set obj [dap_check_request_and_response loadedSources loadedSources
]
38 foreach src
[dict
get [lindex $
obj 0] body sources
] {
39 if {[file tail
[dict
get $src
name]] == "sources.c"} {
40 set path
[dict
get $src path
]
45 fail
"sources.c in loadedSources"
47 pass
"sources.c in loadedSources"
49 dap_wait_for_event_and_check
"stopped at function breakpoint" stopped \
50 "body reason" breakpoint
52 set obj [dap_check_request_and_response
"get source" source \
53 [format
{o source
[o path
[s
%s
]] \
54 sourceReference
[i
0]} $path
]]
56 set text [dict
get [lindex $
obj 0] body content
]
57 gdb_assert
{[string first
"Distinguishing comment" $text] != -1}