diff options
author | Raphael Isemann <teemperor@gmail.com> | 2019-08-21 13:24:21 +0000 |
---|---|---|
committer | Raphael Isemann <teemperor@gmail.com> | 2019-08-21 13:24:21 +0000 |
commit | 34a04e703d9e19403b02c5e31f51db26c980bb45 (patch) | |
tree | fdbb88072a5efb594130b80ecb2f29baf2873c31 /lldb/packages/Python/lldbsuite/test/settings/TestSettings.py | |
parent | d139e8838a6efb8c0b6d6518c2608b253b1e9ee3 (diff) | |
download | bcm5719-llvm-34a04e703d9e19403b02c5e31f51db26c980bb45.tar.gz bcm5719-llvm-34a04e703d9e19403b02c5e31f51db26c980bb45.zip |
[lldb] Add tests for 'settings remove' and fix error message typos
llvm-svn: 369524
Diffstat (limited to 'lldb/packages/Python/lldbsuite/test/settings/TestSettings.py')
-rw-r--r-- | lldb/packages/Python/lldbsuite/test/settings/TestSettings.py | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/lldb/packages/Python/lldbsuite/test/settings/TestSettings.py b/lldb/packages/Python/lldbsuite/test/settings/TestSettings.py index 7f5be886a15..de56195ab2f 100644 --- a/lldb/packages/Python/lldbsuite/test/settings/TestSettings.py +++ b/lldb/packages/Python/lldbsuite/test/settings/TestSettings.py @@ -481,6 +481,45 @@ class SettingsCommandTestCase(TestBase): substrs=['disassembly-format (format-string) = "foo "']) self.runCmd("settings clear disassembly-format", check=False) + def test_settings_list(self): + # List settings (and optionally test the filter to only show 'target' settings). + self.expect("settings list target", substrs=["language", "arg0", "detach-on-error"]) + self.expect("settings list target", matching=False, substrs=["packet-timeout"]) + self.expect("settings list", substrs=["language", "arg0", "detach-on-error", "packet-timeout"]) + + def test_settings_remove_single(self): + # Set some environment variables and use 'remove' to delete them. + self.runCmd("settings set target.env-vars a=b c=d") + self.expect("settings show target.env-vars", substrs=["a=b", "c=d"]) + self.runCmd("settings remove target.env-vars a") + self.expect("settings show target.env-vars", matching=False, substrs=["a=b"]) + self.expect("settings show target.env-vars", substrs=["c=d"]) + self.runCmd("settings remove target.env-vars c") + self.expect("settings show target.env-vars", matching=False, substrs=["a=b", "c=d"]) + + def test_settings_remove_multiple(self): + self.runCmd("settings set target.env-vars a=b c=d e=f") + self.expect("settings show target.env-vars", substrs=["a=b", "c=d", "e=f"]) + self.runCmd("settings remove target.env-vars a e") + self.expect("settings show target.env-vars", matching=False, substrs=["a=b", "e=f"]) + self.expect("settings show target.env-vars", substrs=["c=d"]) + + def test_settings_remove_nonexistent_value(self): + self.expect("settings remove target.env-vars doesntexist", error=True, + substrs=["no value found named 'doesntexist'"]) + + def test_settings_remove_nonexistent_settings(self): + self.expect("settings remove doesntexist alsodoesntexist", error=True, + substrs=["error: invalid value path 'doesntexist'"]) + + def test_settings_remove_missing_arg(self): + self.expect("settings remove", error=True, + substrs=["'settings remove' takes an array or dictionary item, or"]) + + def test_settings_remove_empty_arg(self): + self.expect("settings remove ''", error=True, + substrs=["'settings remove' command requires a valid variable name"]) + def test_all_settings_exist(self): self.expect("settings show", substrs=["auto-confirm", |