llvm-project/lldb/test/API/lang/cpp/frame-var-depth-and-elem-count/TestFrameVarDepthAndElemCount.py
Augusto Noronha f94c7ffe46 [lldb] Never print children if the max depth has been reached
When formatting a variable, the max depth would potentially be ignored
if the current value object failed to print itself. Change that to
always respect the max depth, even if failure occurs.

rdar://109855463

Differential Revision: https://reviews.llvm.org/D152409
2023-06-13 11:03:04 -07:00

28 lines
832 B
Python

"""
Tests that frame variable --depth and --element-count options work correctly
together
"""
import lldb
from lldbsuite.test.lldbtest import *
import lldbsuite.test.lldbutil as lldbutil
class TestFrameVarDepthAndElemCount(TestBase):
def test(self):
"""Test that bool types work in the expression parser"""
self.build()
lldbutil.run_to_source_breakpoint(
self, "break here", lldb.SBFileSpec("main.cpp")
)
# Check that we print 5 elements but only 2 levels deep.
self.expect('frame var --depth 2 --element-count 5 -- c',
substrs=[
'[0] = {\n b ={...}\n }',
'[1] = {\n b ={...}\n }',
'[2] = {\n b ={...}\n }',
'[3] = {\n b ={...}\n }',
'[4] = {\n b ={...}\n }',
])