mirror of
https://github.com/ansible-collections/community.general.git
synced 2025-04-30 14:21:26 -07:00
Do not use mutable defaults in FieldAttribute, instead allow supplying a callable for defaults of mutable types. Fixes #46824 (#46833)
This commit is contained in:
parent
0dd17b521f
commit
a06a5ded61
14 changed files with 57 additions and 37 deletions
|
@ -347,13 +347,13 @@ class BaseSubClass(base.Base):
|
|||
_test_attr_list = FieldAttribute(isa='list', listof=string_types, always_post_validate=True)
|
||||
_test_attr_list_no_listof = FieldAttribute(isa='list', always_post_validate=True)
|
||||
_test_attr_list_required = FieldAttribute(isa='list', listof=string_types, required=True,
|
||||
default=[], always_post_validate=True)
|
||||
default=list, always_post_validate=True)
|
||||
_test_attr_string = FieldAttribute(isa='string', default='the_test_attr_string_default_value')
|
||||
_test_attr_string_required = FieldAttribute(isa='string', required=True,
|
||||
default='the_test_attr_string_default_value')
|
||||
_test_attr_percent = FieldAttribute(isa='percent', always_post_validate=True)
|
||||
_test_attr_set = FieldAttribute(isa='set', default=set(), always_post_validate=True)
|
||||
_test_attr_dict = FieldAttribute(isa='dict', default={'a_key': 'a_value'}, always_post_validate=True)
|
||||
_test_attr_set = FieldAttribute(isa='set', default=set, always_post_validate=True)
|
||||
_test_attr_dict = FieldAttribute(isa='dict', default=lambda: {'a_key': 'a_value'}, always_post_validate=True)
|
||||
_test_attr_class = FieldAttribute(isa='class', class_type=ExampleSubClass)
|
||||
_test_attr_class_post_validate = FieldAttribute(isa='class', class_type=ExampleSubClass,
|
||||
always_post_validate=True)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue