"""
Test children counts of pointer values.
"""
import lldb
from lldbsuite.test.decorators import *
from lldbsuite.test.lldbtest import *
from lldbsuite.test import lldbutil
class TestPointerNumChilden(TestBase):
def test_pointer_num_children(self):
self.build()
lldbutil.run_to_source_breakpoint(
self, "// break here", lldb.SBFileSpec("main.cpp")
)
result = self.frame().FindVariable("Ref")
self.assertEqual(1, result.GetNumChildren())
self.assertEqual(2, result.GetChildAtIndex(0).GetNumChildren())
self.assertEqual("42", result.GetChildAtIndex(0).GetChildAtIndex(0).GetValue())
self.assertEqual("56", result.GetChildAtIndex(0).GetChildAtIndex(1).GetValue())
result = self.frame().FindVariable("Ptr")
self.assertEqual(1, result.GetNumChildren())
self.assertEqual(2, result.GetChildAtIndex(0).GetNumChildren())
self.assertEqual("42", result.GetChildAtIndex(0).GetChildAtIndex(0).GetValue())
self.assertEqual("56", result.GetChildAtIndex(0).GetChildAtIndex(1).GetValue())