blob: ac729c5bacb0f98f123d3847fa86962bfa7480b1 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
|
"""
Test lldb data formatter subsystem.
"""
import lldb
from lldbsuite.test.decorators import *
from lldbsuite.test.lldbtest import *
from lldbsuite.test import lldbutil
class TestDataFormatterStdQueue(TestBase):
def setUp(self):
TestBase.setUp(self)
self.namespace = "std"
def check_variable(self, name):
var = self.frame().FindVariable(name)
self.assertTrue(var.IsValid())
queue = self.namespace + "::queue"
self.assertIn(queue, var.GetDisplayTypeName())
self.assertEqual(var.GetNumChildren(), 5)
for i in range(5):
ch = var.GetChildAtIndex(i)
self.assertTrue(ch.IsValid())
self.assertEqual(ch.GetValueAsSigned(), i + 1)
@expectedFailureAll(
bugnumber="llvm.org/pr36109", debug_info="gmodules", triple=".*-android"
)
@add_test_categories(["libc++"])
def test_libcxx(self):
"""Test that std::queue is displayed correctly"""
self.build(dictionary={"USE_LIBCPP": 1})
lldbutil.run_to_source_breakpoint(
self, "// break here", lldb.SBFileSpec("main.cpp", False)
)
self.check_variable("q1")
self.check_variable("q2")
|