Support absent values. Support absent value 'all' for 'server' in /ip dhcp-server lease. (#107)

This commit is contained in:
Felix Fontein 2022-08-13 10:55:37 +02:00 committed by GitHub
parent a2ace3fb79
commit f797b4a231
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
7 changed files with 232 additions and 10 deletions

View file

@ -128,6 +128,8 @@ def _normalize_entry(entry, path_info):
if ('!%s' % key) in entry:
entry.pop(key, None)
del entry['!%s' % key]
if data.absent_value is not None and key in entry and entry[key] == data.absent_value:
del entry[key]
def massage_expected_result_data(values, path, keep_all=False, remove_dynamic=False):
@ -142,6 +144,9 @@ def massage_expected_result_data(values, path, keep_all=False, remove_dynamic=Fa
if key == '.id' or key in path_info.fields:
continue
del entry[key]
for key, data in path_info.fields.items():
if data.absent_value is not None and key not in entry:
entry[key] = data.absent_value
return values