""" Test basic std::pair functionality. """ from lldbsuite.test.decorators import * from lldbsuite.test.lldbtest import * from lldbsuite.test import lldbutil class TestCase(TestBase): @add_test_categories(["libc++"]) @skipIf(compiler=no_match("clang")) # FIXME: This regressed in 69d5a6662115499198ebfa07a081e98a6ce4b915 # but needs further investigation for what underlying Clang/LLDB bug can't # handle that code change. @skipIf def test(self): self.build() lldbutil.run_to_source_breakpoint( self, "// Set break point at this line.", lldb.SBFileSpec("main.cpp") ) self.runCmd("settings set target.import-std-module true") self.expect_expr("pair_int.first", result_type="int", result_value="1234") self.expect_expr("pair_int.second", result_type="int", result_value="5678") self.expect_expr( "pair_int", result_type="std::pair", result_children=[ ValueCheck(name="first", value="1234"), ValueCheck(name="second", value="5678"), ], ) self.expect_expr( "std::pair lp; lp.first = 3333; lp.second = 2344; lp", result_type="std::pair", result_children=[ ValueCheck(name="first", value="3333"), ValueCheck(name="second", value="2344"), ], )