Files
llvm-project/lldb/test/API/lang/cpp/nested-template/TestNestedTemplate.py
Dave Lee f72a150db0 [lldb] Disallow SHARED_BUILD_TESTCASE for non-default self.build() (#188523)
Change `self.build(...)` to assert if called with arguments of any kind,
for tests which have `SHARED_BUILD_TESTCASE` enabled (the default).

This also changes all tests that began asserting with this change, tests
which call `self.build(...)` with arguments.

---------

Co-authored-by: Adrian Prantl <adrian.prantl@gmail.com>
2026-03-25 14:37:20 -07:00

42 lines
1.3 KiB
Python

"""
Test that a nested template parameter works with simple template names.
"""
import lldb
import lldbsuite.test.lldbutil as lldbutil
from lldbsuite.test.decorators import *
from lldbsuite.test.lldbtest import *
class NestedTemplateTestCase(TestBase):
SHARED_BUILD_TESTCASE = False
def do_test(self, debug_flags):
self.build(dictionary=debug_flags)
self.dbg.CreateTarget(self.getBuildArtifact("a.out"))
self.expect(
"image lookup -A -t 'Inner<int>'",
DATA_TYPES_DISPLAYED_CORRECTLY,
substrs=["1 match found"],
)
self.expect(
"image lookup -A -t 'NS::Struct<int>'",
DATA_TYPES_DISPLAYED_CORRECTLY,
substrs=["1 match found"],
)
self.expect(
"image lookup -A -t 'NS::Union<int>'",
DATA_TYPES_DISPLAYED_CORRECTLY,
substrs=["1 match found"],
)
@skipIf(compiler=no_match("clang"))
@skipIf(compiler_version=["<", "15.0"])
def test_simple_template_names(self):
self.do_test(dict(TEST_CFLAGS_EXTRAS="-gsimple-template-names"))
@skipIf(compiler=no_match("clang"))
@skipIf(compiler_version=["<", "15.0"])
def test_no_simple_template_names(self):
self.do_test(dict(TEST_CFLAGS_EXTRAS="-gno-simple-template-names"))