diff --git a/spec/commands_spec.lua b/spec/commands_spec.lua index c105caa..7ae8851 100644 --- a/spec/commands_spec.lua +++ b/spec/commands_spec.lua @@ -47,11 +47,11 @@ describe("tests related to commands", function() local parser = Parser "name" parser:command "install" + assert.has_error(function() parser:parse{} end, "a command is required") + + parser:require_command(false) local args = parser:parse{} assert.same({}, args) - - parser:require_command(true) - assert.has_error(function() parser:parse{} end, "a command is required") end) it("Detects wrong commands", function() diff --git a/spec/help_spec.lua b/spec/help_spec.lua index fe8aad5..5f777c0 100644 --- a/spec/help_spec.lua +++ b/spec/help_spec.lua @@ -106,7 +106,7 @@ Sets verbosity level. run:option "--where" assert.equal(table.concat({ - "Usage: foo [-q] [-h] [] ...", + "Usage: foo [-q] [-h] ...", "", "Options: ", " -q, --quiet", diff --git a/spec/script b/spec/script index f687587..7573e6b 100755 --- a/spec/script +++ b/spec/script @@ -3,6 +3,7 @@ local Parser = require "argparse" local parser = Parser "test" :description "A testing program. " + :require_command(false) parser:argument "input" diff --git a/spec/usage_spec.lua b/spec/usage_spec.lua index 90626cc..06c8577 100644 --- a/spec/usage_spec.lua +++ b/spec/usage_spec.lua @@ -65,7 +65,7 @@ describe("tests related to usage message generation", function() run:option "--where" assert.equal( - [=[Usage: foo [-q] [] ...]=], + [=[Usage: foo [-q] ...]=], parser:prepare():get_usage() ) end) diff --git a/src/argparse.lua b/src/argparse.lua index 92c307f..dffc6bf 100644 --- a/src/argparse.lua +++ b/src/argparse.lua @@ -48,7 +48,7 @@ local Parser = class { _arguments = {}, _options = {}, _commands = {}, - _require_command = false, + _require_command = true, _add_help = true, _fields = { "name", "description", "require_command",