| # This test validates the plugin enable and disable commands. |
| # Currently it works only for system-runtime plugins and we only have one |
| # system runtime plugin so testing is a bit limited. |
| # |
| # Note that commands that return errors will stop running a script, so we |
| # have new RUN lines for any command that is expected to return an error. |
| |
| # RUN: %lldb -s %s -o exit 2>&1 | FileCheck %s |
| |
| # Test plugin list shows the default state which is expected to be enabled. |
| plugin list |
| # CHECK-LABEL: plugin list |
| # CHECK: system-runtime |
| # CHECK: [+] systemruntime-macosx System runtime plugin for Mac OS X native libraries |
| |
| # Test plugin disable disables a plugin. |
| plugin disable system-runtime.systemruntime-macosx |
| # CHECK-LABEL: plugin disable system-runtime.systemruntime-macosx |
| # CHECK: system-runtime |
| # CHECK: [-] systemruntime-macosx System runtime plugin for Mac OS X native libraries |
| |
| # Make sure plugin list shows it disabled as well. |
| plugin list |
| # CHECK: system-runtime |
| # CHECK: [-] systemruntime-macosx System runtime plugin for Mac OS X native libraries |
| |
| # Test plugin enable re-enables a plugin. |
| plugin enable system-runtime.systemruntime-macosx |
| # CHECK-LABEL: plugin enable system-runtime.systemruntime-macosx |
| # CHECK: system-runtime |
| # CHECK: [+] systemruntime-macosx System runtime plugin for Mac OS X native libraries |
| |
| # Make sure plugin list shows it enabled as well. |
| plugin list |
| # CHECK: system-runtime |
| # CHECK: [+] systemruntime-macosx System runtime plugin for Mac OS X native libraries |
| |
| # Test plugin disable with namespace works. |
| plugin disable system-runtime |
| # CHECK-LABEL: plugin disable system-runtime |
| # CHECK: system-runtime |
| # CHECK: [-] systemruntime-macosx System runtime plugin for Mac OS X native libraries |
| |
| # Test plugin enable with namespace works. |
| plugin enable system-runtime |
| # CHECK-LABEL: plugin enable system-runtime |
| # CHECK: system-runtime |
| # CHECK: [+] systemruntime-macosx System runtime plugin for Mac OS X native libraries |
| |
| # Test plugin enable/disable for instrumentation plugin works. |
| plugin enable instrumentation-runtime |
| # CHECK-LABEL: plugin enable instrumentation-runtime |
| # CHECK: instrumentation-runtime |
| # CHECK: [+] AddressSanitizer |
| plugin disable instrumentation-runtime |
| # CHECK-LABEL: plugin disable instrumentation-runtime |
| # CHECK: instrumentation-runtime |
| # CHECK: [-] AddressSanitizer |
| |
| # Test plugin enable with multiple arguments. |
| plugin enable system-runtime instrumentation-runtime |
| # CHECK-LABEL: plugin enable system-runtime instrumentation-runtime |
| # CHECK: system-runtime |
| # CHECK: [+] systemruntime-macosx System runtime plugin for Mac OS X native libraries. |
| # CHECK: instrumentation-runtime |
| # CHECK: [+] AddressSanitizer AddressSanitizer instrumentation runtime plugin. |
| |
| # Test plugin disable with multiple arguments. |
| plugin disable system-runtime instrumentation-runtime |
| # CHECK-LABEL: plugin disable system-runtime instrumentation-runtime |
| # CHECK: system-runtime |
| # CHECK: [-] systemruntime-macosx System runtime plugin for Mac OS X native libraries. |
| # CHECK: instrumentation-runtime |
| # CHECK: [-] AddressSanitizer AddressSanitizer instrumentation runtime plugin. |
| |
| # Test plugin enable/disable for unknown plugin returns an error. |
| # RUN: %lldb -o "plugin enable some-plugin-that-does-not-exist" 2>&1 | FileCheck %s --check-prefix=ERROR_PLUGIN_NOT_FOUND |
| # RUN: %lldb -o "plugin disable some-plugin-that-does-not-exist" 2>&1 | FileCheck %s --check-prefix=ERROR_PLUGIN_NOT_FOUND |
| # RUN: %lldb -o "plugin enable system-runtime some-plugin-that-does-not-exist" 2>&1 | FileCheck %s --check-prefix=ERROR_PLUGIN_NOT_FOUND |
| # ERROR_PLUGIN_NOT_FOUND: error: Found no matching plugins |
| |
| # Test plugin enable/disable requires a plugin name. |
| # RUN: %lldb -o "plugin enable" 2>&1 | FileCheck %s --check-prefix=ERROR_ARGUMENTS_ENABLE |
| # ERROR_ARGUMENTS_ENABLE: error: 'plugin enable' requires one or more arguments |
| |
| # RUN: %lldb -o "plugin disable" 2>&1 | FileCheck %s --check-prefix=ERROR_ARGUMENTS_DISABLE |
| # ERROR_ARGUMENTS_DISABLE: error: 'plugin disable' requires one or more arguments |