blob: fdfb14bfcc24e7025acd555a4b1becf553774259 [file] [log] [blame]
"""
Make sure the plugin list, enable, and disable commands work.
"""
from lldbsuite.test.decorators import *
from lldbsuite.test.lldbtest import *
class TestFrameVar(TestBase):
# If your test case doesn't stress debug info, then
# set this to true. That way it won't be run once for
# each debug info format.
NO_DEBUG_INFO_TESTCASE = True
def test_plugin_list_enable_disable_commands(self):
for plugin_namespace in [
"abi",
"architecture",
"disassembler",
"dynamic-loader",
"emulate-instruction",
"instrumentation-runtime",
"jit-loader",
"language",
"language-runtime",
"memory-history",
"object-container",
"object-file",
"operating-system",
"platform",
"process",
"repl",
"register-type-builder",
"script-interpreter",
"scripted-interface",
"structured-data",
"symbol-file",
"symbol-locator",
"symbol-vendor",
"system-runtime",
# 'trace', # No trace plugin is registered by default.
"trace-exporter",
"type-system",
"unwind-assembly",
]:
self.do_list_disable_enable_test(plugin_namespace)
def do_list_disable_enable_test(self, plugin_namespace):
# Plugins are enabled by default.
self.expect(
f"plugin list {plugin_namespace}", substrs=[plugin_namespace, "[+]"]
)
# Plugins can be disabled.
self.expect(
f"plugin disable {plugin_namespace}", substrs=[plugin_namespace, "[-]"]
)
# Plugins can be enabled.
self.expect(
f"plugin enable {plugin_namespace}", substrs=[plugin_namespace, "[+]"]
)