mirror of
https://salsa.debian.org/freeipa-team/freeipa.git
synced 2025-02-25 18:55:28 -06:00
Fix dnsrecord-mod raise error if last record attr is removed
Removing last record attribute causes output type validation error Reviewed-By: Jan Cholasta <jcholast@redhat.com>
This commit is contained in:
parent
5aead1ff6f
commit
9e8aed8e53
@ -3374,6 +3374,13 @@ class dnsrecord_mod(LDAPUpdate):
|
||||
if del_all:
|
||||
result = self.obj.methods.delentry(*keys,
|
||||
version=options['version'])
|
||||
|
||||
# we need to modify delete result to match mod output type
|
||||
# only one value is expected, not a list
|
||||
if client_has_capability(options['version'], 'primary_key_types'):
|
||||
assert len(result['value']) == 1
|
||||
result['value'] = result['value'][0]
|
||||
|
||||
# indicate that entry was deleted
|
||||
context.dnsrecord_entry_mods[(keys[0], keys[1])] = None
|
||||
|
||||
|
@ -1378,10 +1378,10 @@ class test_dns(Declarative):
|
||||
|
||||
|
||||
dict(
|
||||
desc='Delete record %r in zone %r' % (tlsa, zone1),
|
||||
command=('dnsrecord_del', [zone1, tlsa], {'del_all': True}),
|
||||
desc='Remove record using dnsrecord-mod %r in zone %r' % (tlsa, zone1),
|
||||
command=('dnsrecord_mod', [zone1, tlsa], {'tlsarecord': ''}),
|
||||
expected={
|
||||
'value': [tlsa_dnsname],
|
||||
'value': tlsa_dnsname,
|
||||
'summary': u'Deleted record "%s"' % tlsa,
|
||||
'result': {'failed': []},
|
||||
},
|
||||
|
Loading…
Reference in New Issue
Block a user