2727class GoDaddyTests (unittest .TestCase ):
2828 def setUp (self ):
2929 GoDaddyMockHttp .type = None
30+ GoDaddyMockHttp .history .clear ()
3031 GoDaddyDNSDriver .connectionCls .conn_class = GoDaddyMockHttp
3132 self .driver = GoDaddyDNSDriver (* DNS_PARAMS_GODADDY )
3233
@@ -36,6 +37,11 @@ def assertHasKeys(self, dictionary, keys):
3637
3738 def test_list_zones (self ):
3839 zones = self .driver .list_zones ()
40+
41+ sent = GoDaddyMockHttp .history .pop ()
42+ self .assertEqual (sent .method , "GET" )
43+ self .assertEqual (sent .url , "/v1/domains/" )
44+
3945 self .assertEqual (len (zones ), 5 )
4046 self .assertEqual (zones [0 ].id , "177184419" )
4147 self .assertEqual (zones [0 ].domain , "aperture-platform.com" )
@@ -75,6 +81,11 @@ def test_list_records(self):
7581 driver = self .driver ,
7682 )
7783 records = self .driver .list_records (zone )
84+
85+ sent = GoDaddyMockHttp .history .pop ()
86+ self .assertEqual (sent .method , "GET" )
87+ self .assertEqual (sent .url , "/v1/domains/aperture-platform.com/records" )
88+
7889 self .assertEqual (len (records ), 14 )
7990 self .assertEqual (records [0 ].type , RecordType .A )
8091 self .assertEqual (records [0 ].name , "@" )
@@ -83,6 +94,13 @@ def test_list_records(self):
8394
8495 def test_get_record (self ):
8596 record = self .driver .get_record ("aperture-platform.com" , "www:A" )
97+
98+ # [0] /v1/domains/aperture-platform.com/records/A/www
99+ # [1] /v1/domains/aperture-platform.com/
100+ sent = GoDaddyMockHttp .history [0 ]
101+ self .assertEqual (sent .method , "GET" )
102+ self .assertEqual (sent .url , "/v1/domains/aperture-platform.com/records/A/www" )
103+
86104 self .assertEqual (record .id , "www:A" )
87105 self .assertEqual (record .name , "www" )
88106 self .assertEqual (record .type , RecordType .A )
@@ -99,6 +117,15 @@ def test_create_record(self):
99117 record = self .driver .create_record (
100118 zone = zone , name = "www" , type = RecordType .A , data = "50.63.202.42"
101119 )
120+
121+ sent = GoDaddyMockHttp .history .pop ()
122+ self .assertEqual (sent .method , "PATCH" )
123+ self .assertEqual (sent .url , "/v1/domains/aperture-platform.com/records" )
124+ data = sent .json [0 ]
125+ self .assertEqual (data ["name" ], "www" )
126+ self .assertEqual (data ["type" ], "A" )
127+ self .assertEqual (data ["data" ], "50.63.202.42" )
128+
102129 self .assertEqual (record .id , "www:A" )
103130 self .assertEqual (record .name , "www" )
104131 self .assertEqual (record .type , RecordType .A )
@@ -109,13 +136,27 @@ def test_update_record(self):
109136 record = self .driver .update_record (
110137 record = record , name = "www" , type = RecordType .A , data = "50.63.202.22"
111138 )
139+
140+ sent = GoDaddyMockHttp .history .pop ()
141+ self .assertEqual (sent .method , "PUT" )
142+ self .assertEqual (sent .url , "/v1/domains/aperture-platform.com/records/A/www" )
143+ data = sent .json [0 ]
144+ self .assertEqual (data ["name" ], "www" )
145+ self .assertEqual (data ["type" ], "A" )
146+ self .assertEqual (data ["data" ], "50.63.202.22" )
147+
112148 self .assertEqual (record .id , "www:A" )
113149 self .assertEqual (record .name , "www" )
114150 self .assertEqual (record .type , RecordType .A )
115151 self .assertEqual (record .data , "50.63.202.22" )
116152
117153 def test_get_zone (self ):
118154 zone = self .driver .get_zone ("aperture-platform.com" )
155+
156+ sent = GoDaddyMockHttp .history .pop ()
157+ self .assertEqual (sent .method , "GET" )
158+ self .assertEqual (sent .url , "/v1/domains/aperture-platform.com/" )
159+
119160 self .assertEqual (zone .id , "177184419" )
120161 self .assertEqual (zone .domain , "aperture-platform.com" )
121162
@@ -129,9 +170,14 @@ def test_delete_zone(self):
129170 )
130171 self .driver .delete_zone (zone )
131172
173+ sent = GoDaddyMockHttp .history .pop ()
174+ self .assertEqual (sent .method , "DELETE" )
175+ self .assertEqual (sent .url , "/v1/domains/aperture-platform.com" )
176+
132177
133178class GoDaddyMockHttp (MockHttp ):
134179 fixtures = DNSFileFixtures ("godaddy" )
180+ keep_history = True
135181
136182 def _v1_domains (self , method , url , body , headers ):
137183 body = self .fixtures .load ("v1_domains.json" )
0 commit comments