--- /dev/null
+import lldb
+from lldbsuite.test.lldbtest import *
+from lldbsuite.test.decorators import *
+
+class InvalidArgsCommandTestCase(TestBase):
+
+ mydir = TestBase.compute_mydir(__file__)
+
+ @no_debug_info_test
+ def test_script_add(self):
+ self.expect("command script add 1 2", error=True,
+ substrs=["'command script add' requires one argument"])
+
+ self.expect("command script add", error=True,
+ substrs=["'command script add' requires one argument"])
+
+ @no_debug_info_test
+ def test_script_clear(self):
+ self.expect("command script clear f", error=True,
+ substrs=["'command script clear' doesn't take any arguments"])
+
+ @no_debug_info_test
+ def test_script_list(self):
+ self.expect("command script list f", error=True,
+ substrs=["'command script list' doesn't take any arguments"])
+
+ @no_debug_info_test
+ def test_script_import(self):
+ self.expect("command script import", error=True,
+ substrs=["command script import needs one or more arguments"])
+
+ @no_debug_info_test
+ def test_alias(self):
+ self.expect("command alias", error=True,
+ substrs=["'command alias' requires at least two arguments"])
+
+ self.expect("command alias blub foo", error=True,
+ substrs=["error: invalid command given to 'command alias'. 'foo' does not begin with a valid command. No alias created."])
+
+ @no_debug_info_test
+ def test_unalias(self):
+ self.expect("command unalias", error=True,
+ substrs=["must call 'unalias' with a valid alias"])
+
+ @no_debug_info_test
+ def test_delete(self):
+ self.expect("command delete", error=True,
+ substrs=["must call 'command delete' with one or more valid user"])
+
+ @no_debug_info_test
+ def test_regex(self):
+ self.expect("command regex", error=True,
+ substrs=["usage: 'command regex <command-name> "])
+
+ @no_debug_info_test
+ def test_source(self):
+ self.expect("command source", error=True,
+ substrs=["'command source' takes exactly one executable filename argument."])
"defined regular expression command names",
GetCommandName().str().c_str());
result.SetStatus(eReturnStatusFailed);
+ return false;
}
auto command_name = args[0].ref;
~CommandObjectCommandsScriptList() override = default;
bool DoExecute(Args &command, CommandReturnObject &result) override {
+ if (command.GetArgumentCount() != 0) {
+ result.AppendError("'command script list' doesn't take any arguments");
+ result.SetStatus(eReturnStatusFailed);
+ return false;
+ }
+
m_interpreter.GetHelp(result, CommandInterpreter::eCommandTypesUserDef);
result.SetStatus(eReturnStatusSuccessFinishResult);
protected:
bool DoExecute(Args &command, CommandReturnObject &result) override {
+ if (command.GetArgumentCount() != 0) {
+ result.AppendError("'command script clear' doesn't take any arguments");
+ result.SetStatus(eReturnStatusFailed);
+ return false;
+ }
+
m_interpreter.RemoveAllUser();
result.SetStatus(eReturnStatusSuccessFinishResult);