]> git.ipfire.org Git - thirdparty/pdns.git/commitdiff
Also test for empty record contents.
authorMiod Vallat <miod.vallat@powerdns.com>
Wed, 11 Feb 2026 11:37:11 +0000 (12:37 +0100)
committerMiod Vallat <miod.vallat@powerdns.com>
Wed, 11 Feb 2026 11:37:11 +0000 (12:37 +0100)
Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
regression-tests.api/test_Zones.py

index 114a826891f0fe3dafa8c9e6cb6a0c13de26013f..fa45be59fccc6dd3c6513f0175bb6aed309b073a 100644 (file)
@@ -1399,6 +1399,26 @@ $NAME$  1D  IN  SOA ns1.example.org. hostmaster.example.org. (
             headers={'content-type': 'application/json'})
         self.assertEqual(r.status_code, 422)
         self.assert_in_json_error("Invalid character '(' in record content", r.json())
+        # rrset with empty contents
+        rrset = {
+            'changetype': 'replace',
+            'name': 'a.'+name,
+            'type': 'A',
+            'ttl': 3600,
+            'records': [
+                {
+                    "content": "",
+                    "disabled": False
+                }
+            ]
+        }
+        payload = {'rrsets': [rrset]}
+        r = self.session.patch(
+            self.url("/api/v1/servers/localhost/zones/" + name),
+            data=json.dumps(payload),
+            headers={'content-type': 'application/json'})
+        self.assertEqual(r.status_code, 422)
+        self.assert_in_json_error("missing field at the end of record content ''", r.json())
 
     def test_zone_rr_update(self):
         name, payload, zone = self.create_zone()