netcmd: models: setting kwarg to None should use field default
[janger/samba-autobuild/.git] / python / samba / netcmd / domain / models / model.py
index fd4df3f068835f811f8d7734ddb18ec5cf6258c8..0e1f242ce9614533eb419cf70a5ed6c761201e62 100644 (file)
@@ -79,8 +79,12 @@ class Model(metaclass=ModelMeta):
         self._message = None
 
         for field_name, field in self.fields.items():
-            if field_name in kwargs:
-                default = kwargs[field_name]
+            field_value = kwargs.get(field_name)
+
+            # Set fields from values provided in kwargs dict.
+            # If field is set to None we use the field default (if any)
+            if field_value is not None:
+                default = field_value
             elif callable(field.default):
                 default = field.default(self)
             else: