From 6cbd0ef903820cb634e0ca1ad8fede1a8ed69b91 Mon Sep 17 00:00:00 2001 From: Arnav Bhattacharya Date: Fri, 8 Aug 2025 12:17:03 +0100 Subject: [PATCH] fix(zone): create_version fix --- ns1/rest/zones.py | 11 +++++++++-- tests/unit/test_zone.py | 9 +++++---- 2 files changed, 14 insertions(+), 6 deletions(-) diff --git a/ns1/rest/zones.py b/ns1/rest/zones.py index 581a30e..07f01fe 100644 --- a/ns1/rest/zones.py +++ b/ns1/rest/zones.py @@ -147,14 +147,21 @@ def list_versions(self, zone, callback=None, errback=None): errback=errback, ) - def create_version(self, zone, force=False, callback=None, errback=None): + def create_version( + self, zone, force=False, callback=None, errback=None, name=None + ): + if name is None: + name = zone + body = {} + body["name"] = name + request = "{}/{}/versions?force={}".format( self.ROOT, zone, str.lower(str(force)) ) return self._make_request( "PUT", request, - params={}, + body=body, callback=callback, errback=errback, ) diff --git a/tests/unit/test_zone.py b/tests/unit/test_zone.py index 2786aba..5dae71d 100644 --- a/tests/unit/test_zone.py +++ b/tests/unit/test_zone.py @@ -193,14 +193,15 @@ def cb(): @pytest.mark.parametrize( - "zone, url", [("test.zone", "zones/test.zone/versions?force=false")] + "zone, url, name", + [("test.zone", "zones/test.zone/versions?force=false", "new.zone")], ) -def test_rest_zone_version_create(zones_config, zone, url): +def test_rest_zone_version_create(zones_config, zone, url, name): z = ns1.rest.zones.Zones(zones_config) z._make_request = mock.MagicMock() - z.create_version(zone) + z.create_version(zone, name=name) z._make_request.assert_called_once_with( - "PUT", url, params={}, callback=None, errback=None + "PUT", url, body={"name": name}, callback=None, errback=None )