@@ -89,7 +89,7 @@ def test_list_record_types(self):
8989
9090 def test_list_records (self ):
9191 records = self .driver .list_records (self .test_zone )
92- self .assertEqual (len (records ), 3 )
92+ self .assertEqual (len (records ), 4 )
9393
9494 def test_list_zones (self ):
9595 zones = self .driver .list_zones ()
@@ -118,6 +118,24 @@ def test_update_record(self):
118118 self .assertEqual (record .type , RecordType .A )
119119 self .assertEqual (record .ttl , 300 )
120120
121+ # test issue #2042
122+ def test_add_other_type_to_existing_record (self ):
123+ payload = self .driver ._to_patchrequest (
124+ self .test_record .zone .id ,
125+ self .test_record ,
126+ "aaaaexisting" ,
127+ RecordType .A ,
128+ "127.0.0.1" ,
129+ {"ttl" : 300 },
130+ "update" ,
131+ )
132+ self .assertEqual (payload [0 ]["name" ], "aaaaexisting.example.at." )
133+ self .assertEqual (payload [0 ]["type" ], RecordType .A )
134+ self .assertEqual (payload [0 ]["ttl" ], 300 )
135+ self .assertEqual (payload [0 ]["changetype" ], "update" )
136+ expected_record = [{"content" : "127.0.0.1" }]
137+ self .assertEqual (payload [0 ]["records" ], expected_record )
138+
121139 def test_update_zone (self ):
122140 with self .assertRaises (NotImplementedError ):
123141 self .driver .update_zone (self .test_zone , "example.at" )
0 commit comments