mirror of
https://salsa.debian.org/freeipa-team/freeipa.git
synced 2025-02-25 18:55:28 -06:00
Param now takes cli_name kwarg that sets Param.cli_name attribute
This commit is contained in:
parent
367143adf3
commit
8674086b85
@ -198,6 +198,7 @@ class Param(plugable.ReadOnly):
|
|||||||
============ ================= ==================
|
============ ================= ==================
|
||||||
Keyword Type Default
|
Keyword Type Default
|
||||||
============ ================= ==================
|
============ ================= ==================
|
||||||
|
cli_name str defaults to name
|
||||||
type ipa_type.Type ipa_type.Unicode()
|
type ipa_type.Type ipa_type.Unicode()
|
||||||
doc str ''
|
doc str ''
|
||||||
required bool True
|
required bool True
|
||||||
@ -210,6 +211,7 @@ class Param(plugable.ReadOnly):
|
|||||||
"""
|
"""
|
||||||
__nones = (None, '', tuple(), [])
|
__nones = (None, '', tuple(), [])
|
||||||
__defaults = dict(
|
__defaults = dict(
|
||||||
|
cli_name=None,
|
||||||
type=ipa_types.Unicode(),
|
type=ipa_types.Unicode(),
|
||||||
doc='',
|
doc='',
|
||||||
required=True,
|
required=True,
|
||||||
@ -226,6 +228,7 @@ class Param(plugable.ReadOnly):
|
|||||||
(name, kw_from_spec) = parse_param_spec(name)
|
(name, kw_from_spec) = parse_param_spec(name)
|
||||||
override.update(kw_from_spec)
|
override.update(kw_from_spec)
|
||||||
kw = dict(self.__defaults)
|
kw = dict(self.__defaults)
|
||||||
|
kw['cli_name'] = name
|
||||||
if not set(kw).issuperset(override):
|
if not set(kw).issuperset(override):
|
||||||
extra = sorted(set(override) - set(kw))
|
extra = sorted(set(override) - set(kw))
|
||||||
raise TypeError(
|
raise TypeError(
|
||||||
@ -234,6 +237,7 @@ class Param(plugable.ReadOnly):
|
|||||||
kw.update(override)
|
kw.update(override)
|
||||||
self.__kw = kw
|
self.__kw = kw
|
||||||
self.name = check_name(name)
|
self.name = check_name(name)
|
||||||
|
self.cli_name = check_name(kw.get('cli_name', name))
|
||||||
self.type = self.__check_isinstance(ipa_types.Type, 'type')
|
self.type = self.__check_isinstance(ipa_types.Type, 'type')
|
||||||
self.doc = self.__check_type(str, 'doc')
|
self.doc = self.__check_type(str, 'doc')
|
||||||
self.required = self.__check_type(bool, 'required')
|
self.required = self.__check_type(bool, 'required')
|
||||||
|
@ -155,6 +155,7 @@ class test_Param(ClassChecker):
|
|||||||
|
|
||||||
# Test default values
|
# Test default values
|
||||||
assert read_only(o, 'name') is name
|
assert read_only(o, 'name') is name
|
||||||
|
assert read_only(o, 'cli_name') is name
|
||||||
assert isinstance(read_only(o, 'type'), ipa_types.Unicode)
|
assert isinstance(read_only(o, 'type'), ipa_types.Unicode)
|
||||||
assert read_only(o, 'doc') == ''
|
assert read_only(o, 'doc') == ''
|
||||||
assert read_only(o, 'required') is True
|
assert read_only(o, 'required') is True
|
||||||
@ -167,6 +168,7 @@ class test_Param(ClassChecker):
|
|||||||
|
|
||||||
# Test all kw args:
|
# Test all kw args:
|
||||||
t = ipa_types.Int()
|
t = ipa_types.Int()
|
||||||
|
assert self.cls(name, cli_name='last').cli_name == 'last'
|
||||||
assert self.cls(name, type=t).type is t
|
assert self.cls(name, type=t).type is t
|
||||||
assert self.cls(name, doc='the doc').doc == 'the doc'
|
assert self.cls(name, doc='the doc').doc == 'the doc'
|
||||||
assert self.cls(name, required=False).required is False
|
assert self.cls(name, required=False).required is False
|
||||||
|
Loading…
Reference in New Issue
Block a user