File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -371,11 +371,11 @@ def register_argparse_argument_parameter(
371371 It accepts the Action instance and the value as arguments.
372372 """
373373 if not param_name .isidentifier ():
374- raise KeyError (f' Invalid parameter name { param_name } - cannot be used as a python identifier' )
374+ raise KeyError (f" Invalid parameter name ' { param_name } ' - cannot be used as a python identifier" )
375375
376376 attr_name = constants .cmd2_attr_name (param_name )
377377 if param_name in CUSTOM_ACTION_ATTRIBS or hasattr (argparse .Action , attr_name ):
378- raise KeyError (f' Custom parameter { param_name } already exists' )
378+ raise KeyError (f" Custom parameter ' { param_name } ' already exists" )
379379
380380 def _action_get_custom_parameter (self : argparse .Action ) -> Any :
381381 """Get the custom attribute of an argparse Action."""
Original file line number Diff line number Diff line change 99from cmd2 import (
1010 Choices ,
1111 Cmd2ArgumentParser ,
12+ argparse_custom ,
1213 constants ,
1314)
1415from cmd2 .argparse_custom import (
1516 Cmd2HelpFormatter ,
1617 Cmd2RichArgparseConsole ,
1718 generate_range_error ,
19+ register_argparse_argument_parameter ,
1820)
1921
2022from .conftest import run_cmd
@@ -296,6 +298,19 @@ def test_cmd2_attribute_wrapper() -> None:
296298 assert wrapper .get () == new_val
297299
298300
301+ def test_register_argparse_argument_parameter () -> None :
302+ register_argparse_argument_parameter ("test" )
303+ assert "test" in argparse_custom .CUSTOM_ACTION_ATTRIBS
304+
305+ expected_err = "already exists"
306+ with pytest .raises (KeyError , match = expected_err ):
307+ register_argparse_argument_parameter ("test" )
308+
309+ expected_err = "Invalid parameter name"
310+ with pytest .raises (KeyError , match = expected_err ):
311+ register_argparse_argument_parameter ("invalid name" )
312+
313+
299314def test_parser_attachment () -> None :
300315 # Attach a parser as a subcommand
301316 root_parser = Cmd2ArgumentParser (description = "root command" )
You can’t perform that action at this time.
0 commit comments