@@ -31,6 +31,7 @@ def setUp(self):
3131 GoogleDNSDriver .connectionCls .conn_class = GoogleDNSMockHttp
3232 GoogleBaseAuthConnection .conn_class = GoogleAuthMockHttp
3333 GoogleDNSMockHttp .type = None
34+ GoogleDNSMockHttp .history .clear ()
3435 kwargs = DNS_KEYWORD_PARAMS_GOOGLE .copy ()
3536 kwargs ["auth_type" ] = "IA"
3637 self .driver = GoogleDNSDriver (* DNS_PARAMS_GOOGLE , ** kwargs )
@@ -40,15 +41,32 @@ def test_default_scopes(self):
4041
4142 def test_list_zones (self ):
4243 zones = self .driver .list_zones ()
44+
45+ sent = GoogleDNSMockHttp .history .pop ()
46+ self .assertEqual (sent .method , "GET" )
47+ self .assertEqual (sent .url , "/dns/v1/projects/project_name/managedZones" )
48+
4349 self .assertEqual (len (zones ), 2 )
4450
4551 def test_list_records (self ):
4652 zone = self .driver .list_zones ()[0 ]
53+ GoogleDNSMockHttp .history .clear ()
54+
4755 records = self .driver .list_records (zone = zone )
56+
57+ sent = GoogleDNSMockHttp .history .pop ()
58+ self .assertEqual (sent .method , "GET" )
59+ self .assertEqual (sent .url , f"/dns/v1/projects/project_name/managedZones/{ zone .id } /rrsets" )
60+
4861 self .assertEqual (len (records ), 3 )
4962
5063 def test_get_zone (self ):
5164 zone = self .driver .get_zone ("example-com" )
65+
66+ sent = GoogleDNSMockHttp .history .pop ()
67+ self .assertEqual (sent .method , "GET" )
68+ self .assertEqual (sent .url , f"/dns/v1/projects/project_name/managedZones/example-com" )
69+
5270 self .assertEqual (zone .id , "example-com" )
5371 self .assertEqual (zone .domain , "example.com." )
5472
@@ -65,7 +83,16 @@ def test_get_zone_does_not_exist(self):
6583 def test_get_record (self ):
6684 GoogleDNSMockHttp .type = "FILTER_ZONES"
6785 zone = self .driver .list_zones ()[0 ]
86+ GoogleDNSMockHttp .history .clear ()
87+
6888 record = self .driver .get_record (zone .id , "A:foo.example.com." )
89+
90+ # [0] /dns/v1/projects/project_name/managedZones/{zone.id}/rrsets
91+ # [1] /dns/v1/projects/project_name/managedZones/{zone.id}
92+ sent = GoogleDNSMockHttp .history .pop (0 )
93+ self .assertEqual (sent .method , "GET" )
94+ self .assertEqual (sent .url , f"/dns/v1/projects/project_name/managedZones/{ zone .id } /rrsets" )
95+
6996 self .assertEqual (record .id , "A:foo.example.com." )
7097 self .assertEqual (record .name , "foo.example.com." )
7198 self .assertEqual (record .type , "A" )
@@ -93,13 +120,25 @@ def test_get_record_record_does_not_exist(self):
93120 def test_create_zone (self ):
94121 extra = {"description" : "new domain for example.org" }
95122 zone = self .driver .create_zone ("example.org." , extra )
123+
124+ sent = GoogleDNSMockHttp .history .pop ()
125+ self .assertEqual (sent .method , "POST" )
126+ self .assertEqual (sent .url , "/dns/v1/projects/project_name/managedZones" )
127+ self .assertEqual (sent .json ["name" ], "example-org" )
128+ self .assertEqual (sent .json ["dnsName" ], "example.org." )
129+
96130 self .assertEqual (zone .domain , "example.org." )
97131 self .assertEqual (zone .extra ["description" ], extra ["description" ])
98132 self .assertEqual (len (zone .extra ["nameServers" ]), 4 )
99133
100134 def test_delete_zone (self ):
101135 zone = self .driver .get_zone ("example-com" )
102136 res = self .driver .delete_zone (zone )
137+
138+ sent = GoogleDNSMockHttp .history .pop ()
139+ self .assertEqual (sent .method , "DELETE" )
140+ self .assertEqual (sent .url , "/dns/v1/projects/project_name/managedZones/example-com" )
141+
103142 self .assertTrue (res )
104143
105144 def test_ex_bulk_record_changes (self ):
@@ -115,6 +154,7 @@ def test_ex_bulk_record_changes(self):
115154
116155class GoogleDNSMockHttp (MockHttp ):
117156 fixtures = DNSFileFixtures ("google" )
157+ keep_history = True
118158
119159 def _dns_v1_projects_project_name_managedZones (self , method , url , body , headers ):
120160 if method == "POST" :
0 commit comments