Merge ~adam-collard/maas:no-assertItemsEqual-models into maas:master

Proposed by Adam Collard
Status: Merged
Approved by: Adam Collard
Approved revision: 1583112a72dfd33d3b6b121b77d8563c9ecaff7e
Merge reported by: MAAS Lander
Merged at revision: not available
Proposed branch: ~adam-collard/maas:no-assertItemsEqual-models
Merge into: maas:master
Diff against target: 2895 lines (+355/-390)
26 files modified
src/maasserver/models/signals/tests/test_interfaces.py (+2/-2)
src/maasserver/models/tests/test_blockdevice.py (+9/-9)
src/maasserver/models/tests/test_bmc.py (+24/-26)
src/maasserver/models/tests/test_bootresource.py (+11/-11)
src/maasserver/models/tests/test_bootsource.py (+1/-1)
src/maasserver/models/tests/test_cacheset.py (+1/-1)
src/maasserver/models/tests/test_dnsresource.py (+4/-4)
src/maasserver/models/tests/test_domain.py (+8/-8)
src/maasserver/models/tests/test_fabric.py (+7/-7)
src/maasserver/models/tests/test_fannetwork.py (+1/-1)
src/maasserver/models/tests/test_filesystem.py (+2/-2)
src/maasserver/models/tests/test_filesystemgroup.py (+22/-50)
src/maasserver/models/tests/test_interface.py (+75/-77)
src/maasserver/models/tests/test_keysource.py (+1/-1)
src/maasserver/models/tests/test_node.py (+103/-103)
src/maasserver/models/tests/test_partition.py (+11/-11)
src/maasserver/models/tests/test_resourcepool.py (+3/-3)
src/maasserver/models/tests/test_space.py (+6/-6)
src/maasserver/models/tests/test_sshkey.py (+2/-2)
src/maasserver/models/tests/test_sslkey.py (+2/-2)
src/maasserver/models/tests/test_staticipaddress.py (+4/-4)
src/maasserver/models/tests/test_subnet.py (+34/-34)
src/maasserver/models/tests/test_tag.py (+8/-11)
src/maasserver/models/tests/test_versionedtextfile.py (+1/-1)
src/maasserver/models/tests/test_virtualblockdevice.py (+2/-2)
src/maasserver/models/tests/test_vlan.py (+11/-11)
Reviewer Review Type Date Requested Status
Alberto Donato (community) Approve
MAAS Lander unittests Pending
Review via email: mp+408725@code.launchpad.net

Commit message

[models] Replace defunct assertItemsEqual

To post a comment you must log in.
Revision history for this message
Alberto Donato (ack) wrote :

nice, +1

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1diff --git a/src/maasserver/models/signals/tests/test_interfaces.py b/src/maasserver/models/signals/tests/test_interfaces.py
2index 26c4b44..c2ea55b 100644
3--- a/src/maasserver/models/signals/tests/test_interfaces.py
4+++ b/src/maasserver/models/signals/tests/test_interfaces.py
5@@ -67,7 +67,7 @@ class TestEnableAndDisableInterface(MAASServerTestCase):
6 interface.ensure_link_up()
7 interface.enabled = False
8 interface.save()
9- self.assertItemsEqual([], interface.ip_addresses.all())
10+ self.assertCountEqual([], interface.ip_addresses.all())
11
12 def test_disable_interface_removes_links_on_children(self):
13 interface = factory.make_Interface(
14@@ -79,7 +79,7 @@ class TestEnableAndDisableInterface(MAASServerTestCase):
15 vlan_interface.ensure_link_up()
16 interface.enabled = False
17 interface.save()
18- self.assertItemsEqual([], vlan_interface.ip_addresses.all())
19+ self.assertCountEqual([], vlan_interface.ip_addresses.all())
20
21 def test_disable_interface_doesnt_remove_links_on_enabled_children(self):
22 node = factory.make_Node()
23diff --git a/src/maasserver/models/tests/test_blockdevice.py b/src/maasserver/models/tests/test_blockdevice.py
24index d384566..9e101a5 100644
25--- a/src/maasserver/models/tests/test_blockdevice.py
26+++ b/src/maasserver/models/tests/test_blockdevice.py
27@@ -217,7 +217,7 @@ class TestBlockDeviceManager(MAASServerTestCase):
28 ]
29 for _ in range(3):
30 factory.make_BlockDevice(tags=other_tags)
31- self.assertItemsEqual(
32+ self.assertCountEqual(
33 devices_with_tags, BlockDevice.objects.filter_by_tags([tags[0]])
34 )
35
36@@ -229,7 +229,7 @@ class TestBlockDeviceManager(MAASServerTestCase):
37 ]
38 for _ in range(3):
39 factory.make_BlockDevice(tags=other_tags)
40- self.assertItemsEqual(
41+ self.assertCountEqual(
42 devices_with_tags, BlockDevice.objects.filter_by_tags(tags)
43 )
44
45@@ -237,7 +237,7 @@ class TestBlockDeviceManager(MAASServerTestCase):
46 tags = [factory.make_name("tag") for _ in range(3)]
47 for _ in range(3):
48 factory.make_BlockDevice(tags=tags)
49- self.assertItemsEqual(
50+ self.assertCountEqual(
51 [], BlockDevice.objects.filter_by_tags([factory.make_name("tag")])
52 )
53
54@@ -254,7 +254,7 @@ class TestBlockDeviceManager(MAASServerTestCase):
55 for tag in tags:
56 yield tag
57
58- self.assertItemsEqual(
59+ self.assertCountEqual(
60 devices_with_tags,
61 BlockDevice.objects.filter_by_tags(tag_generator()),
62 )
63@@ -282,7 +282,7 @@ class TestBlockDeviceManager(MAASServerTestCase):
64 factory.make_Filesystem(
65 block_device=factory.make_BlockDevice(node=node)
66 )
67- self.assertItemsEqual(
68+ self.assertCountEqual(
69 free_devices,
70 BlockDevice.objects.get_free_block_devices_for_node(node),
71 )
72@@ -314,7 +314,7 @@ class TestBlockDeviceManager(MAASServerTestCase):
73 filesystem_group
74 )
75 )
76- self.assertItemsEqual(block_devices, block_devices_in_filesystem_group)
77+ self.assertCountEqual(block_devices, block_devices_in_filesystem_group)
78 self.assertNotIn(
79 block_device_with_partitions, block_devices_in_filesystem_group
80 )
81@@ -390,21 +390,21 @@ class TestBlockDevice(MAASServerTestCase):
82 block_device = BlockDevice()
83 tag = factory.make_name("tag")
84 block_device.add_tag(tag)
85- self.assertItemsEqual([tag], block_device.tags)
86+ self.assertEqual([tag], block_device.tags)
87
88 def test_add_tag_doesnt_duplicate(self):
89 block_device = BlockDevice()
90 tag = factory.make_name("tag")
91 block_device.add_tag(tag)
92 block_device.add_tag(tag)
93- self.assertItemsEqual([tag], block_device.tags)
94+ self.assertEqual([tag], block_device.tags)
95
96 def test_remove_tag_deletes_tag(self):
97 block_device = BlockDevice()
98 tag = factory.make_name("tag")
99 block_device.add_tag(tag)
100 block_device.remove_tag(tag)
101- self.assertItemsEqual([], block_device.tags)
102+ self.assertEqual([], block_device.tags)
103
104 def test_remove_tag_doesnt_error_on_missing_tag(self):
105 block_device = BlockDevice()
106diff --git a/src/maasserver/models/tests/test_bmc.py b/src/maasserver/models/tests/test_bmc.py
107index 633ee27..b12b0f5 100644
108--- a/src/maasserver/models/tests/test_bmc.py
109+++ b/src/maasserver/models/tests/test_bmc.py
110@@ -163,7 +163,7 @@ class TestBMC(MAASServerTestCase):
111 % (factory.ip_to_url_format(discovered_ip.ip))
112 },
113 )
114- self.assertItemsEqual(
115+ self.assertCountEqual(
116 [discovered_ip, sticky_ip],
117 StaticIPAddress.objects.filter(ip=discovered_ip.ip),
118 )
119@@ -467,7 +467,7 @@ class TestBMC(MAASServerTestCase):
120 BMCRoutableRackControllerRelationship(
121 bmc=bmc, rack_controller=rack, routable=False
122 ).save()
123- self.assertItemsEqual(
124+ self.assertCountEqual(
125 routable_racks,
126 bmc.get_usable_rack_controllers(with_connection=False),
127 )
128@@ -488,7 +488,7 @@ class TestBMC(MAASServerTestCase):
129 client = Mock()
130 client.ident = connected_rack.system_id
131 self.patch(bmc_module, "getAllClients").return_value = [client]
132- self.assertItemsEqual(
133+ self.assertEqual(
134 [connected_rack],
135 bmc.get_usable_rack_controllers(with_connection=True),
136 )
137@@ -531,7 +531,7 @@ class TestBMC(MAASServerTestCase):
138 def test_get_usable_rack_controllers_returns_rack_controllers(self):
139 rack_controller = factory.make_RackController()
140 machine = factory.make_Node(bmc_connected_to=rack_controller)
141- self.assertItemsEqual(
142+ self.assertEqual(
143 [rack_controller],
144 machine.bmc.get_usable_rack_controllers(with_connection=False),
145 )
146@@ -543,9 +543,7 @@ class TestBMC(MAASServerTestCase):
147 bmc, "get_usable_rack_controllers"
148 ).return_value = rack_controllers
149 expected_system_ids = [rack.system_id for rack in rack_controllers]
150- self.assertItemsEqual(
151- expected_system_ids, bmc.get_client_identifiers()
152- )
153+ self.assertEqual(expected_system_ids, bmc.get_client_identifiers())
154
155 def test_is_accessible_calls_get_usable_rack_controllers(self):
156 bmc = factory.make_BMC()
157@@ -625,7 +623,7 @@ class TestPodManager(MAASServerTestCase):
158 def test_get_pods_no_rbac_always_all(self):
159 pods = [factory.make_Pod() for _ in range(3)]
160 for perm in PodPermission:
161- self.assertItemsEqual(
162+ self.assertCountEqual(
163 pods, Pod.objects.get_pods(factory.make_User(), perm)
164 )
165
166@@ -645,7 +643,7 @@ class TestPodManager(MAASServerTestCase):
167 for _ in range(3):
168 factory.make_Pod()
169
170- self.assertItemsEqual(
171+ self.assertCountEqual(
172 [view, view_all], Pod.objects.get_pods(user, PodPermission.view)
173 )
174
175@@ -669,10 +667,10 @@ class TestPodManager(MAASServerTestCase):
176 for _ in range(3):
177 factory.make_Pod()
178
179- self.assertItemsEqual(
180+ self.assertCountEqual(
181 [admin_pod], Pod.objects.get_pods(user, PodPermission.edit)
182 )
183- self.assertItemsEqual(
184+ self.assertCountEqual(
185 [admin_pod], Pod.objects.get_pods(user, PodPermission.compose)
186 )
187
188@@ -696,7 +694,7 @@ class TestPodManager(MAASServerTestCase):
189 for _ in range(3):
190 factory.make_Pod()
191
192- self.assertItemsEqual(
193+ self.assertCountEqual(
194 [deploy_pod, admin_pod],
195 Pod.objects.get_pods(user, PodPermission.dynamic_compose),
196 )
197@@ -1243,14 +1241,14 @@ class TestPod(MAASServerTestCase, PodTestMixin):
198 pod.sync(
199 DiscoveredPod(architectures=discovered_pod.architectures), user
200 )
201- self.assertNotEquals(-1, pod.cores)
202- self.assertNotEquals(-1, pod.cpu_speed)
203- self.assertNotEquals(-1, pod.memory)
204- self.assertNotEquals(-1, pod.local_storage)
205- self.assertNotEquals(-1, pod.hints.cores)
206- self.assertNotEquals(-1, pod.hints.cpu_speed)
207- self.assertNotEquals(-1, pod.hints.memory)
208- self.assertNotEquals(-1, pod.hints.local_storage)
209+ self.assertNotEqual(-1, pod.cores)
210+ self.assertNotEqual(-1, pod.cpu_speed)
211+ self.assertNotEqual(-1, pod.memory)
212+ self.assertNotEqual(-1, pod.local_storage)
213+ self.assertNotEqual(-1, pod.hints.cores)
214+ self.assertNotEqual(-1, pod.hints.cpu_speed)
215+ self.assertNotEqual(-1, pod.hints.memory)
216+ self.assertNotEqual(-1, pod.hints.local_storage)
217
218 def test_create_machine_ensures_unique_hostname(self):
219 existing_machine = factory.make_Node()
220@@ -1478,7 +1476,7 @@ class TestPod(MAASServerTestCase, PodTestMixin):
221 )
222 # Check that the interface names match the labels provided in the
223 # constraints string.
224- self.assertItemsEqual(
225+ self.assertEqual(
226 ["maas0", "maas1", "maas2"],
227 list(
228 machine.interface_set.order_by("id").values_list(
229@@ -1783,7 +1781,7 @@ class TestPod(MAASServerTestCase, PodTestMixin):
230 # Check that the interface names use the ethX numbering, since the
231 # provided constraints won't match the number of interfaces that were
232 # returned.
233- self.assertItemsEqual(
234+ self.assertEqual(
235 ["eth0", "eth1", "eth2"],
236 list(
237 machine.interface_set.order_by("id").values_list(
238@@ -1807,7 +1805,7 @@ class TestPod(MAASServerTestCase, PodTestMixin):
239 machine = pod.create_machine(discovered_machine, factory.make_User())
240 # Check that the interface names match the labels provided in the
241 # constraints string.
242- self.assertItemsEqual(
243+ self.assertEqual(
244 ["eth0", "eth1", "eth2"],
245 list(
246 machine.interface_set.order_by("id").values_list(
247@@ -2523,7 +2521,7 @@ class TestPod(MAASServerTestCase, PodTestMixin):
248 factory.make_User(),
249 )
250 node = reload_object(node)
251- self.assertItemsEqual([node], pod.hints.nodes.all())
252+ self.assertCountEqual([node], pod.hints.nodes.all())
253 self.assertEqual(NODE_STATUS.DEPLOYED, node.status)
254 self.assertIsNotNone(node.current_commissioning_script_set)
255
256@@ -2544,7 +2542,7 @@ class TestPod(MAASServerTestCase, PodTestMixin):
257 factory.make_User(),
258 )
259 device = reload_object(device)
260- self.assertItemsEqual([device], pod.hints.nodes.all())
261+ self.assertCountEqual([device], pod.hints.nodes.all())
262 self.assertEqual(NODE_STATUS.DEPLOYED, device.status)
263 self.assertEqual(NODE_TYPE.MACHINE, device.node_type)
264 self.assertIsNotNone(device.current_commissioning_script_set)
265@@ -2567,7 +2565,7 @@ class TestPod(MAASServerTestCase, PodTestMixin):
266 self.assertEqual(NODE_STATUS.DEPLOYED, node.status)
267 self.assertEqual(NODE_TYPE.MACHINE, node.node_type)
268 self.assertEqual(sync_user, node.owner)
269- self.assertItemsEqual(
270+ self.assertCountEqual(
271 mac_addresses,
272 [str(iface.mac_address) for iface in node.interface_set.all()],
273 )
274diff --git a/src/maasserver/models/tests/test_bootresource.py b/src/maasserver/models/tests/test_bootresource.py
275index 116801a..e4280b0 100644
276--- a/src/maasserver/models/tests/test_bootresource.py
277+++ b/src/maasserver/models/tests/test_bootresource.py
278@@ -166,7 +166,7 @@ class TestBootResourceManager(MAASServerTestCase):
279 factory.make_usable_boot_resource(architecture=arch)
280 usable_arches = BootResource.objects.get_usable_architectures()
281 self.assertIsInstance(usable_arches, list)
282- self.assertItemsEqual(arches, usable_arches)
283+ self.assertCountEqual(arches, usable_arches)
284
285 def test_get_usable_architectures_combines_subarches(self):
286 arches = set()
287@@ -182,7 +182,7 @@ class TestBootResourceManager(MAASServerTestCase):
288 )
289 usable_arches = BootResource.objects.get_usable_architectures()
290 self.assertIsInstance(usable_arches, list)
291- self.assertItemsEqual(arches, usable_arches)
292+ self.assertCountEqual(arches, usable_arches)
293
294 def test_get_usable_hwe_kernel_doesnt_include_all_subarches(self):
295 factory.make_usable_boot_resource(
296@@ -232,7 +232,7 @@ class TestBootResourceManager(MAASServerTestCase):
297 commissionables = BootResource.objects.get_commissionable_resource(
298 os, series
299 )
300- self.assertItemsEqual([resource], commissionables)
301+ self.assertEqual([resource], list(commissionables))
302
303 def test_get_commissionable_resource_returns_only_for_os_series(self):
304 os = factory.make_name("os")
305@@ -245,7 +245,7 @@ class TestBootResourceManager(MAASServerTestCase):
306 commissionables = BootResource.objects.get_commissionable_resource(
307 os, series
308 )
309- self.assertItemsEqual([resource], commissionables)
310+ self.assertCountEqual([resource], commissionables)
311
312 def test_get_commissionable_resource_returns_sorted_by_architecture(self):
313 os = factory.make_name("os")
314@@ -487,7 +487,7 @@ class TestGetResourcesMatchingBootImages(MAASServerTestCase):
315 subarchitecture=subarch,
316 label=label,
317 )
318- self.assertItemsEqual(
319+ self.assertEqual(
320 [resource],
321 BootResource.objects.get_resources_matching_boot_images([image]),
322 )
323@@ -507,7 +507,7 @@ class TestGetResourcesMatchingBootImages(MAASServerTestCase):
324 subarchitecture=subarch,
325 label="*",
326 )
327- self.assertItemsEqual(
328+ self.assertEqual(
329 [resource],
330 BootResource.objects.get_resources_matching_boot_images([image]),
331 )
332@@ -525,7 +525,7 @@ class TestGetResourcesMatchingBootImages(MAASServerTestCase):
333 subarchitecture=subarch,
334 label="*",
335 )
336- self.assertItemsEqual(
337+ self.assertEqual(
338 [resource],
339 BootResource.objects.get_resources_matching_boot_images([image]),
340 )
341@@ -586,7 +586,7 @@ class TestGetResourcesMatchingBootImages(MAASServerTestCase):
342 )
343 for purpose in purposes
344 ]
345- self.assertItemsEqual(
346+ self.assertEqual(
347 [resource],
348 BootResource.objects.get_resources_matching_boot_images(images),
349 )
350@@ -623,7 +623,7 @@ class TestGetResourcesMatchingBootImages(MAASServerTestCase):
351 for purpose in purposes
352 ]
353 )
354- self.assertItemsEqual(
355+ self.assertCountEqual(
356 resources,
357 BootResource.objects.get_resources_matching_boot_images(images),
358 )
359@@ -642,7 +642,7 @@ class TestGetResourcesMatchingBootImages(MAASServerTestCase):
360 subarchitecture=subarch,
361 label=label,
362 )
363- self.assertItemsEqual(
364+ self.assertEqual(
365 [resource],
366 BootResource.objects.get_resources_matching_boot_images([image]),
367 )
368@@ -660,7 +660,7 @@ class TestGetResourcesMatchingBootImages(MAASServerTestCase):
369 subarchitecture=subarch,
370 label=label,
371 )
372- self.assertItemsEqual(
373+ self.assertEqual(
374 [resource],
375 BootResource.objects.get_resources_matching_boot_images([image]),
376 )
377diff --git a/src/maasserver/models/tests/test_bootsource.py b/src/maasserver/models/tests/test_bootsource.py
378index b47d46c..3cd416e 100644
379--- a/src/maasserver/models/tests/test_bootsource.py
380+++ b/src/maasserver/models/tests/test_bootsource.py
381@@ -115,7 +115,7 @@ class TestBootSource(MAASServerTestCase):
382 arch=arch,
383 )
384 bootloaders.append(bootloader_type)
385- self.assertItemsEqual(
386+ self.assertCountEqual(
387 [
388 selection["release"]
389 for selection in boot_source.to_dict()["selections"]
390diff --git a/src/maasserver/models/tests/test_cacheset.py b/src/maasserver/models/tests/test_cacheset.py
391index 5d1b528..75dcb22 100644
392--- a/src/maasserver/models/tests/test_cacheset.py
393+++ b/src/maasserver/models/tests/test_cacheset.py
394@@ -29,7 +29,7 @@ class TestCacheSetManager(MAASServerTestCase):
395 def test_get_cache_sets_for_node(self):
396 node = factory.make_Node()
397 cache_sets = [factory.make_CacheSet(node=node) for _ in range(3)]
398- self.assertItemsEqual(
399+ self.assertCountEqual(
400 cache_sets, CacheSet.objects.get_cache_sets_for_node(node)
401 )
402
403diff --git a/src/maasserver/models/tests/test_dnsresource.py b/src/maasserver/models/tests/test_dnsresource.py
404index ae74888..2eb6207 100644
405--- a/src/maasserver/models/tests/test_dnsresource.py
406+++ b/src/maasserver/models/tests/test_dnsresource.py
407@@ -90,7 +90,7 @@ class TestDNSResourceManager(MAASServerTestCase):
408 dnsresource = factory.make_DNSResource()
409 factory.make_DNSResource()
410 id = dnsresource.id
411- self.assertItemsEqual(
412+ self.assertCountEqual(
413 DNSResource.objects.filter_by_specifiers("%s" % id), [dnsresource]
414 )
415
416@@ -99,7 +99,7 @@ class TestDNSResourceManager(MAASServerTestCase):
417 name = factory.make_name("dnsresource")
418 dnsresource = factory.make_DNSResource(name=name)
419 factory.make_DNSResource()
420- self.assertItemsEqual(
421+ self.assertCountEqual(
422 DNSResource.objects.filter_by_specifiers(name), [dnsresource]
423 )
424
425@@ -108,7 +108,7 @@ class TestDNSResourceManager(MAASServerTestCase):
426 name = factory.make_name("dnsresource")
427 dnsresource = factory.make_DNSResource(name=name)
428 factory.make_DNSResource()
429- self.assertItemsEqual(
430+ self.assertCountEqual(
431 DNSResource.objects.filter_by_specifiers("name:%s" % name),
432 [dnsresource],
433 )
434@@ -250,7 +250,7 @@ class DNSResourceTest(MAASServerTestCase):
435 node.interface_set.first().ip_addresses.add(sip1)
436 sip2 = factory.make_StaticIPAddress()
437 dnsresource.ip_addresses.add(sip2)
438- self.assertItemsEqual(
439+ self.assertCountEqual(
440 (sip1.get_ip(), sip2.get_ip()), dnsresource.get_addresses()
441 )
442
443diff --git a/src/maasserver/models/tests/test_domain.py b/src/maasserver/models/tests/test_domain.py
444index 356042d..f55021c 100644
445--- a/src/maasserver/models/tests/test_domain.py
446+++ b/src/maasserver/models/tests/test_domain.py
447@@ -113,7 +113,7 @@ class TestDomainManager(MAASServerTestCase):
448 domain = factory.make_Domain()
449 factory.make_Domain()
450 id = domain.id
451- self.assertItemsEqual(
452+ self.assertCountEqual(
453 Domain.objects.filter_by_specifiers("%s" % id), [domain]
454 )
455
456@@ -122,7 +122,7 @@ class TestDomainManager(MAASServerTestCase):
457 name = factory.make_name("domain-")
458 domain = factory.make_Domain(name=name)
459 factory.make_Domain()
460- self.assertItemsEqual(
461+ self.assertCountEqual(
462 Domain.objects.filter_by_specifiers(name), [domain]
463 )
464
465@@ -131,7 +131,7 @@ class TestDomainManager(MAASServerTestCase):
466 name = factory.make_name("domain-")
467 domain = factory.make_Domain(name=name)
468 factory.make_Domain()
469- self.assertItemsEqual(
470+ self.assertCountEqual(
471 Domain.objects.filter_by_specifiers("name:%s" % name), [domain]
472 )
473
474@@ -142,7 +142,7 @@ class TestDomainManager(MAASServerTestCase):
475 factory.make_Domain(name=name2, authoritative=True)
476 fwd_ip = factory.make_ip_address()
477 factory.make_ForwardDNSServer(ip_address=fwd_ip, domains=[domain1])
478- self.assertItemsEqual(Domain.objects.get_forward_domains(), [domain1])
479+ self.assertCountEqual(Domain.objects.get_forward_domains(), [domain1])
480
481
482 class DomainTest(MAASServerTestCase):
483@@ -188,7 +188,7 @@ class DomainTest(MAASServerTestCase):
484 name = factory.make_name("name")
485 domain = factory.make_Domain(name=name)
486 domain.delete()
487- self.assertItemsEqual([], Domain.objects.filter(name=name))
488+ self.assertCountEqual([], Domain.objects.filter(name=name))
489
490 def test_validate_authority_raises_exception_when_both_authoritative_and_has_forward_dns_servers(
491 self,
492@@ -367,7 +367,7 @@ class DomainTest(MAASServerTestCase):
493 dnsrr_from_db = DNSResource.objects.get(id=dnsrr.id)
494 self.assertEqual("@", dnsrr_from_db.name)
495 self.assertEqual(child, dnsrr_from_db.domain)
496- self.assertItemsEqual(
497+ self.assertCountEqual(
498 [], DNSResource.objects.filter(name=c_name, domain=parent)
499 )
500
501@@ -456,10 +456,10 @@ class TestRenderRRData(MAASServerTestCase):
502 factory.make_DNSResource(name=node.hostname, domain=domain)
503 expected = self.render_rrdata(domain, for_list=True)
504 actual = domain.render_json_for_related_rrdata(for_list=True)
505- self.assertItemsEqual(expected, actual)
506+ self.assertCountEqual(expected, actual)
507 expected = self.render_rrdata(domain, for_list=False)
508 actual = domain.render_json_for_related_rrdata(for_list=False)
509- self.assertItemsEqual(expected, actual)
510+ self.assertCountEqual(expected, actual)
511
512 def test_render_json_for_related_rrdata_includes_user_id(self):
513 domain = factory.make_Domain()
514diff --git a/src/maasserver/models/tests/test_fabric.py b/src/maasserver/models/tests/test_fabric.py
515index 806bf5b..805dee0 100644
516--- a/src/maasserver/models/tests/test_fabric.py
517+++ b/src/maasserver/models/tests/test_fabric.py
518@@ -85,7 +85,7 @@ class TestFabricManager(MAASServerTestCase):
519 fabric = factory.make_Fabric()
520 factory.make_Fabric()
521 id = fabric.id
522- self.assertItemsEqual(
523+ self.assertCountEqual(
524 Fabric.objects.filter_by_specifiers("%s" % id), [fabric]
525 )
526
527@@ -94,7 +94,7 @@ class TestFabricManager(MAASServerTestCase):
528 fabric = factory.make_Fabric()
529 factory.make_Fabric()
530 id = fabric.id
531- self.assertItemsEqual(
532+ self.assertCountEqual(
533 Fabric.objects.filter_by_specifiers("fabric-%s" % id), [fabric]
534 )
535
536@@ -102,7 +102,7 @@ class TestFabricManager(MAASServerTestCase):
537 factory.make_Fabric()
538 fabric = factory.make_Fabric(name="infinite-improbability")
539 factory.make_Fabric()
540- self.assertItemsEqual(
541+ self.assertCountEqual(
542 Fabric.objects.filter_by_specifiers("infinite-improbability"),
543 [fabric],
544 )
545@@ -111,7 +111,7 @@ class TestFabricManager(MAASServerTestCase):
546 factory.make_Fabric()
547 fabric = factory.make_Fabric(name="infinite-improbability")
548 factory.make_Fabric()
549- self.assertItemsEqual(
550+ self.assertCountEqual(
551 Fabric.objects.filter_by_specifiers("name:infinite-improbability"),
552 [fabric],
553 )
554@@ -120,7 +120,7 @@ class TestFabricManager(MAASServerTestCase):
555 factory.make_Fabric(class_type="1 Gbps")
556 fabric = factory.make_Fabric(class_type="400 Tbps")
557 factory.make_Fabric(class_type="10 Gbps")
558- self.assertItemsEqual(
559+ self.assertCountEqual(
560 Fabric.objects.filter_by_specifiers("class:400 Tbps"), [fabric]
561 )
562
563@@ -218,7 +218,7 @@ class TestFabric(MAASServerTestCase):
564 def test_can_delete_nonconnected_fabric(self):
565 fabric = factory.make_Fabric()
566 fabric.delete()
567- self.assertItemsEqual([], Fabric.objects.filter(id=fabric.id))
568+ self.assertCountEqual([], Fabric.objects.filter(id=fabric.id))
569
570 def test_cant_delete_fabric_if_connected_to_interfaces(self):
571 fabric = factory.make_Fabric()
572@@ -262,7 +262,7 @@ class TestFabric(MAASServerTestCase):
573 fabric = factory.make_Fabric(name=name)
574 fabric.vlan_set.all().delete()
575 fabric.delete()
576- self.assertItemsEqual([], Fabric.objects.filter(id=fabric.id))
577+ self.assertCountEqual([], Fabric.objects.filter(id=fabric.id))
578
579 def test_save_accepts_default_vlan_in_fabric(self):
580 fabric = factory.make_Fabric()
581diff --git a/src/maasserver/models/tests/test_fannetwork.py b/src/maasserver/models/tests/test_fannetwork.py
582index ea576a6..888580a 100644
583--- a/src/maasserver/models/tests/test_fannetwork.py
584+++ b/src/maasserver/models/tests/test_fannetwork.py
585@@ -82,7 +82,7 @@ class TestFanNetwork(MAASServerTestCase):
586 def test_can_delete_fannetwork(self):
587 fannetwork = factory.make_FanNetwork()
588 fannetwork.delete()
589- self.assertItemsEqual([], FanNetwork.objects.filter(id=fannetwork.id))
590+ self.assertCountEqual([], FanNetwork.objects.filter(id=fannetwork.id))
591
592 def test_cannot_create_ipv6_fannetwork(self):
593 with ExpectedException(ValidationError):
594diff --git a/src/maasserver/models/tests/test_filesystem.py b/src/maasserver/models/tests/test_filesystem.py
595index 945499f..2d03cf7 100644
596--- a/src/maasserver/models/tests/test_filesystem.py
597+++ b/src/maasserver/models/tests/test_filesystem.py
598@@ -42,7 +42,7 @@ class TestFilesystemManager(MAASServerTestCase):
599 filesystem_on_bd = factory.make_Filesystem(block_device=block_device)
600 filesystem_on_partition = factory.make_Filesystem(partition=partition)
601 filesystem_on_node = factory.make_Filesystem(node=node)
602- self.assertItemsEqual(
603+ self.assertCountEqual(
604 [
605 root_fs,
606 filesystem_on_bd,
607@@ -129,7 +129,7 @@ class TestFilesystem(MAASServerTestCase):
608 level=FILESYSTEM_GROUP_TYPE.RAID_1, partitions=partitions
609 )
610 fs = factory.make_Filesystem(block_device=fs_group.virtual_device)
611- self.assertItemsEqual(fs.get_physical_block_devices(), block_devices)
612+ self.assertCountEqual(fs.get_physical_block_devices(), block_devices)
613
614 def test_get_size_returns_partition_size(self):
615 partition = factory.make_Partition()
616diff --git a/src/maasserver/models/tests/test_filesystemgroup.py b/src/maasserver/models/tests/test_filesystemgroup.py
617index 88b099b..cb960dc 100644
618--- a/src/maasserver/models/tests/test_filesystemgroup.py
619+++ b/src/maasserver/models/tests/test_filesystemgroup.py
620@@ -219,9 +219,7 @@ class TestManagersFilterByBlockDevice(MAASServerTestCase):
621 result_filesystem_group_ids = [
622 fsgroup.id for fsgroup in filesystem_groups
623 ]
624- self.assertItemsEqual(
625- [filesystem_group.id], result_filesystem_group_ids
626- )
627+ self.assertEqual([filesystem_group.id], result_filesystem_group_ids)
628
629 def test_volume_group_on_partition(self):
630 block_device = factory.make_PhysicalBlockDevice(size=10 * 1024 ** 3)
631@@ -243,9 +241,7 @@ class TestManagersFilterByBlockDevice(MAASServerTestCase):
632 result_filesystem_group_ids = [
633 fsgroup.id for fsgroup in filesystem_groups
634 ]
635- self.assertItemsEqual(
636- [filesystem_group.id], result_filesystem_group_ids
637- )
638+ self.assertEqual([filesystem_group.id], result_filesystem_group_ids)
639
640 def test_volume_group_on_two_partitions(self):
641 block_device = factory.make_PhysicalBlockDevice()
642@@ -270,9 +266,7 @@ class TestManagersFilterByBlockDevice(MAASServerTestCase):
643 result_filesystem_group_ids = [
644 fsgroup.id for fsgroup in filesystem_groups
645 ]
646- self.assertItemsEqual(
647- [filesystem_group.id], result_filesystem_group_ids
648- )
649+ self.assertEqual([filesystem_group.id], result_filesystem_group_ids)
650
651 def test_raid_on_block_devices(self):
652 node = factory.make_Node()
653@@ -294,9 +288,7 @@ class TestManagersFilterByBlockDevice(MAASServerTestCase):
654 result_filesystem_group_ids = [
655 fsgroup.id for fsgroup in filesystem_groups
656 ]
657- self.assertItemsEqual(
658- [filesystem_group.id], result_filesystem_group_ids
659- )
660+ self.assertEqual([filesystem_group.id], result_filesystem_group_ids)
661
662 def test_raid_on_partitions(self):
663 block_device = factory.make_PhysicalBlockDevice()
664@@ -319,9 +311,7 @@ class TestManagersFilterByBlockDevice(MAASServerTestCase):
665 result_filesystem_group_ids = [
666 fsgroup.id for fsgroup in filesystem_groups
667 ]
668- self.assertItemsEqual(
669- [filesystem_group.id], result_filesystem_group_ids
670- )
671+ self.assertEqual([filesystem_group.id], result_filesystem_group_ids)
672
673 def test_bcache_on_block_devices(self):
674 node = factory.make_Node()
675@@ -344,9 +334,7 @@ class TestManagersFilterByBlockDevice(MAASServerTestCase):
676 result_filesystem_group_ids = [
677 fsgroup.id for fsgroup in filesystem_groups
678 ]
679- self.assertItemsEqual(
680- [filesystem_group.id], result_filesystem_group_ids
681- )
682+ self.assertEqual([filesystem_group.id], result_filesystem_group_ids)
683
684 def test_bcache_on_partitions(self):
685 device_size = random.randint(
686@@ -378,9 +366,7 @@ class TestManagersFilterByBlockDevice(MAASServerTestCase):
687 result_filesystem_group_ids = [
688 fsgroup.id for fsgroup in filesystem_groups
689 ]
690- self.assertItemsEqual(
691- [filesystem_group.id], result_filesystem_group_ids
692- )
693+ self.assertEqual([filesystem_group.id], result_filesystem_group_ids)
694
695
696 class TestManagersFilterByNode(MAASServerTestCase):
697@@ -399,9 +385,7 @@ class TestManagersFilterByNode(MAASServerTestCase):
698 result_filesystem_group_ids = [
699 fsgroup.id for fsgroup in filesystem_groups
700 ]
701- self.assertItemsEqual(
702- [filesystem_group.id], result_filesystem_group_ids
703- )
704+ self.assertEqual([filesystem_group.id], result_filesystem_group_ids)
705
706 def test_volume_group_on_partition(self):
707 node = factory.make_Node()
708@@ -420,9 +404,7 @@ class TestManagersFilterByNode(MAASServerTestCase):
709 result_filesystem_group_ids = [
710 fsgroup.id for fsgroup in filesystem_groups
711 ]
712- self.assertItemsEqual(
713- [filesystem_group.id], result_filesystem_group_ids
714- )
715+ self.assertEqual([filesystem_group.id], result_filesystem_group_ids)
716
717 def test_volume_group_on_two_partitions(self):
718 node = factory.make_Node()
719@@ -446,9 +428,7 @@ class TestManagersFilterByNode(MAASServerTestCase):
720 result_filesystem_group_ids = [
721 fsgroup.id for fsgroup in filesystem_groups
722 ]
723- self.assertItemsEqual(
724- [filesystem_group.id], result_filesystem_group_ids
725- )
726+ self.assertEqual([filesystem_group.id], result_filesystem_group_ids)
727
728 def test_raid_on_block_devices(self):
729 node = factory.make_Node()
730@@ -468,9 +448,7 @@ class TestManagersFilterByNode(MAASServerTestCase):
731 result_filesystem_group_ids = [
732 fsgroup.id for fsgroup in filesystem_groups
733 ]
734- self.assertItemsEqual(
735- [filesystem_group.id], result_filesystem_group_ids
736- )
737+ self.assertEqual([filesystem_group.id], result_filesystem_group_ids)
738
739 def test_raid_on_partitions(self):
740 node = factory.make_Node()
741@@ -494,9 +472,7 @@ class TestManagersFilterByNode(MAASServerTestCase):
742 result_filesystem_group_ids = [
743 fsgroup.id for fsgroup in filesystem_groups
744 ]
745- self.assertItemsEqual(
746- [filesystem_group.id], result_filesystem_group_ids
747- )
748+ self.assertEqual([filesystem_group.id], result_filesystem_group_ids)
749
750 def test_bcache_on_block_devices(self):
751 node = factory.make_Node()
752@@ -517,9 +493,7 @@ class TestManagersFilterByNode(MAASServerTestCase):
753 result_filesystem_group_ids = [
754 fsgroup.id for fsgroup in filesystem_groups
755 ]
756- self.assertItemsEqual(
757- [filesystem_group.id], result_filesystem_group_ids
758- )
759+ self.assertEqual([filesystem_group.id], result_filesystem_group_ids)
760
761 def test_bcache_on_partitions(self):
762 node = factory.make_Node()
763@@ -543,9 +517,7 @@ class TestManagersFilterByNode(MAASServerTestCase):
764 result_filesystem_group_ids = [
765 fsgroup.id for fsgroup in filesystem_groups
766 ]
767- self.assertItemsEqual(
768- [filesystem_group.id], result_filesystem_group_ids
769- )
770+ self.assertEqual([filesystem_group.id], result_filesystem_group_ids)
771
772
773 class TestFilesystemGroupManager(MAASServerTestCase):
774@@ -603,7 +575,7 @@ class TestVolumeGroupManager(MAASServerTestCase):
775 filesystem.block_device.actual_instance
776 for filesystem in volume_group.filesystems.all()
777 ]
778- self.assertItemsEqual(block_devices, block_devices_in_vg)
779+ self.assertCountEqual(block_devices, block_devices_in_vg)
780
781 def test_create_volume_group_with_partitions(self):
782 node = factory.make_Node()
783@@ -626,7 +598,7 @@ class TestVolumeGroupManager(MAASServerTestCase):
784 filesystem.partition
785 for filesystem in volume_group.filesystems.all()
786 ]
787- self.assertItemsEqual(partitions, partitions_in_vg)
788+ self.assertCountEqual(partitions, partitions_in_vg)
789
790 def test_create_volume_group_with_block_devices_and_partitions(self):
791 node = factory.make_Node()
792@@ -658,8 +630,8 @@ class TestVolumeGroupManager(MAASServerTestCase):
793 for filesystem in volume_group.filesystems.all()
794 if filesystem.partition is not None
795 ]
796- self.assertItemsEqual(block_devices, block_devices_in_vg)
797- self.assertItemsEqual(partitions, partitions_in_vg)
798+ self.assertCountEqual(block_devices, block_devices_in_vg)
799+ self.assertCountEqual(partitions, partitions_in_vg)
800
801
802 class TestFilesystemGroup(MAASServerTestCase):
803@@ -1675,8 +1647,8 @@ class TestFilesystemGroup(MAASServerTestCase):
804 filesystem_group.delete()
805 deleted_filesystems = reload_objects(Filesystem, filesystems)
806 kept_block_devices = reload_objects(PhysicalBlockDevice, block_devices)
807- self.assertItemsEqual([], deleted_filesystems)
808- self.assertItemsEqual(block_devices, kept_block_devices)
809+ self.assertCountEqual([], deleted_filesystems)
810+ self.assertCountEqual(block_devices, kept_block_devices)
811
812 def test_delete_cannot_delete_volume_group_with_logical_volumes(self):
813 volume_group = factory.make_FilesystemGroup(
814@@ -2460,7 +2432,7 @@ class TestRAID(MAASServerTestCase):
815 (2 * device_size) - RAID_SUPERBLOCK_OVERHEAD, raid.get_size()
816 )
817 # Ensure the filesystems are the exact same before and after.
818- self.assertItemsEqual(
819+ self.assertCountEqual(
820 fsids_before, [fs.id for fs in raid.filesystems.all()]
821 )
822
823@@ -2502,7 +2474,7 @@ class TestRAID(MAASServerTestCase):
824 raid.get_size(),
825 )
826 # Ensure the filesystems are the exact same before and after.
827- self.assertItemsEqual(
828+ self.assertCountEqual(
829 fsids_before, [fs.id for fs in raid.filesystems.all()]
830 )
831
832diff --git a/src/maasserver/models/tests/test_interface.py b/src/maasserver/models/tests/test_interface.py
833index 5fe9e75..f52f739 100644
834--- a/src/maasserver/models/tests/test_interface.py
835+++ b/src/maasserver/models/tests/test_interface.py
836@@ -80,7 +80,7 @@ class TestInterfaceManager(MAASServerTestCase):
837 physical = factory.make_Interface(INTERFACE_TYPE.PHYSICAL)
838 bond = factory.make_Interface(INTERFACE_TYPE.BOND, parents=[physical])
839 vlan = factory.make_Interface(INTERFACE_TYPE.VLAN, parents=[bond])
840- self.assertItemsEqual([physical, bond, vlan], Interface.objects.all())
841+ self.assertCountEqual([physical, bond, vlan], Interface.objects.all())
842
843 def test_get_interface_or_404_returns_interface(self):
844 node = factory.make_Node()
845@@ -393,38 +393,38 @@ class TestInterfaceQueriesMixin(MAASServerTestCase):
846 ip="2001:db8::1", interface=iface3, subnet=subnet2
847 )
848 # First try with the '/prefixlen' string appended.
849- self.assertItemsEqual(
850+ self.assertCountEqual(
851 Interface.objects.filter_by_specifiers("%s/24" % ip1.ip), [iface1]
852 )
853- self.assertItemsEqual(
854+ self.assertCountEqual(
855 Interface.objects.filter_by_specifiers("%s/64" % ip3.ip), [iface3]
856 )
857- self.assertItemsEqual(
858+ self.assertCountEqual(
859 Interface.objects.filter_by_specifiers(
860 ["%s/24" % ip1.ip, "%s/64" % ip3.ip]
861 ),
862 [iface1, iface3],
863 )
864 # Next, try plain old IP addresses.
865- self.assertItemsEqual(
866+ self.assertCountEqual(
867 Interface.objects.filter_by_specifiers("%s" % ip1.ip), [iface1]
868 )
869- self.assertItemsEqual(
870+ self.assertCountEqual(
871 Interface.objects.filter_by_specifiers("%s" % ip3.ip), [iface3]
872 )
873- self.assertItemsEqual(
874+ self.assertCountEqual(
875 Interface.objects.filter_by_specifiers(
876 ["%s" % ip1.ip, "%s" % ip3.ip]
877 ),
878 [iface1, iface3],
879 )
880- self.assertItemsEqual(
881+ self.assertCountEqual(
882 Interface.objects.filter_by_specifiers(iface1.name), [iface1]
883 )
884- self.assertItemsEqual(
885+ self.assertCountEqual(
886 Interface.objects.filter_by_specifiers(iface2.name), [iface2]
887 )
888- self.assertItemsEqual(
889+ self.assertCountEqual(
890 Interface.objects.filter_by_specifiers(iface3.name), [iface3]
891 )
892
893@@ -435,14 +435,14 @@ class TestInterfaceQueriesMixin(MAASServerTestCase):
894 vlan2 = factory.make_VLAN(vid=2, fabric=fabric2)
895 iface1 = factory.make_Interface(vlan=vlan1)
896 iface2 = factory.make_Interface(vlan=vlan2)
897- self.assertItemsEqual(
898+ self.assertCountEqual(
899 Interface.objects.filter_by_specifiers("fabric_class:10g"),
900 [iface1],
901 )
902- self.assertItemsEqual(
903+ self.assertCountEqual(
904 Interface.objects.filter_by_specifiers("fabric_class:1g"), [iface2]
905 )
906- self.assertItemsEqual(
907+ self.assertCountEqual(
908 Interface.objects.filter_by_specifiers(
909 ["fabric_class:1g", "fabric_class:10g"]
910 ),
911@@ -456,13 +456,13 @@ class TestInterfaceQueriesMixin(MAASServerTestCase):
912 vlan2 = factory.make_VLAN(vid=2, fabric=fabric2)
913 iface1 = factory.make_Interface(vlan=vlan1)
914 iface2 = factory.make_Interface(vlan=vlan2)
915- self.assertItemsEqual(
916+ self.assertCountEqual(
917 Interface.objects.filter_by_specifiers("fabric:fabric1"), [iface1]
918 )
919- self.assertItemsEqual(
920+ self.assertCountEqual(
921 Interface.objects.filter_by_specifiers("fabric:fabric2"), [iface2]
922 )
923- self.assertItemsEqual(
924+ self.assertCountEqual(
925 Interface.objects.filter_by_specifiers(
926 ["fabric:fabric1", "fabric:fabric2"]
927 ),
928@@ -472,15 +472,15 @@ class TestInterfaceQueriesMixin(MAASServerTestCase):
929 def test_filter_by_specifiers_matches_interface_id(self):
930 iface1 = factory.make_Interface()
931 iface2 = factory.make_Interface()
932- self.assertItemsEqual(
933+ self.assertCountEqual(
934 Interface.objects.filter_by_specifiers("id:%s" % iface1.id),
935 [iface1],
936 )
937- self.assertItemsEqual(
938+ self.assertCountEqual(
939 Interface.objects.filter_by_specifiers("id:%s" % iface2.id),
940 [iface2],
941 )
942- self.assertItemsEqual(
943+ self.assertCountEqual(
944 Interface.objects.filter_by_specifiers(
945 ["id:%s" % iface1.id, "id:%s" % iface2.id]
946 ),
947@@ -503,15 +503,15 @@ class TestInterfaceQueriesMixin(MAASServerTestCase):
948 iface2 = factory.make_Interface(
949 INTERFACE_TYPE.VLAN, vlan=vlan2, parents=[parent2]
950 )
951- self.assertItemsEqual(
952+ self.assertCountEqual(
953 Interface.objects.filter_by_specifiers("vid:%s" % vlan1.vid),
954 [iface1],
955 )
956- self.assertItemsEqual(
957+ self.assertCountEqual(
958 Interface.objects.filter_by_specifiers("vid:%s" % vlan2.vid),
959 [iface2],
960 )
961- self.assertItemsEqual(
962+ self.assertCountEqual(
963 Interface.objects.filter_by_specifiers(
964 ["vid:%s" % vlan1.vid, "vid:%s" % vlan2.vid]
965 ),
966@@ -534,15 +534,15 @@ class TestInterfaceQueriesMixin(MAASServerTestCase):
967 iface2 = factory.make_Interface(
968 INTERFACE_TYPE.VLAN, vlan=vlan2, parents=[parent2]
969 )
970- self.assertItemsEqual(
971+ self.assertCountEqual(
972 Interface.objects.filter_by_specifiers("vlan:%s" % vlan1.vid),
973 [iface1],
974 )
975- self.assertItemsEqual(
976+ self.assertCountEqual(
977 Interface.objects.filter_by_specifiers("vlan:%s" % vlan2.vid),
978 [iface2],
979 )
980- self.assertItemsEqual(
981+ self.assertCountEqual(
982 Interface.objects.filter_by_specifiers(
983 ["vlan:%s" % vlan1.vid, "vlan:%s" % vlan2.vid]
984 ),
985@@ -560,19 +560,19 @@ class TestInterfaceQueriesMixin(MAASServerTestCase):
986 )
987 iface1 = node1.get_boot_interface()
988 iface2 = node2.get_boot_interface()
989- self.assertItemsEqual(
990+ self.assertCountEqual(
991 Interface.objects.filter_by_specifiers(
992 "subnet:cidr:%s" % subnet1.cidr
993 ),
994 [iface1],
995 )
996- self.assertItemsEqual(
997+ self.assertCountEqual(
998 Interface.objects.filter_by_specifiers(
999 "subnet:cidr:%s" % subnet2.cidr
1000 ),
1001 [iface2],
1002 )
1003- self.assertItemsEqual(
1004+ self.assertCountEqual(
1005 Interface.objects.filter_by_specifiers(
1006 [
1007 "subnet:cidr:%s" % subnet1.cidr,
1008@@ -593,19 +593,19 @@ class TestInterfaceQueriesMixin(MAASServerTestCase):
1009 )
1010 iface1 = node1.get_boot_interface()
1011 iface2 = node2.get_boot_interface()
1012- self.assertItemsEqual(
1013+ self.assertCountEqual(
1014 Interface.objects.filter_by_specifiers(
1015 "subnet_cidr:%s" % subnet1.cidr
1016 ),
1017 [iface1],
1018 )
1019- self.assertItemsEqual(
1020+ self.assertCountEqual(
1021 Interface.objects.filter_by_specifiers(
1022 "subnet_cidr:%s" % subnet2.cidr
1023 ),
1024 [iface2],
1025 )
1026- self.assertItemsEqual(
1027+ self.assertCountEqual(
1028 Interface.objects.filter_by_specifiers(
1029 [
1030 "subnet_cidr:%s" % subnet1.cidr,
1031@@ -630,15 +630,15 @@ class TestInterfaceQueriesMixin(MAASServerTestCase):
1032 )
1033 iface1 = node1.get_boot_interface()
1034 iface2 = node2.get_boot_interface()
1035- self.assertItemsEqual(
1036+ self.assertCountEqual(
1037 Interface.objects.filter_by_specifiers("space:%s" % space1.name),
1038 [iface1],
1039 )
1040- self.assertItemsEqual(
1041+ self.assertCountEqual(
1042 Interface.objects.filter_by_specifiers("space:%s" % space2.name),
1043 [iface2],
1044 )
1045- self.assertItemsEqual(
1046+ self.assertCountEqual(
1047 Interface.objects.filter_by_specifiers(
1048 ["space:%s" % space1.name, "space:%s" % space2.name]
1049 ),
1050@@ -660,15 +660,15 @@ class TestInterfaceQueriesMixin(MAASServerTestCase):
1051 )
1052 iface1 = node1.get_boot_interface()
1053 iface2 = node2.get_boot_interface()
1054- self.assertItemsEqual(
1055+ self.assertCountEqual(
1056 Interface.objects.filter_by_specifiers("space:%s" % space1.name),
1057 [iface1],
1058 )
1059- self.assertItemsEqual(
1060+ self.assertCountEqual(
1061 Interface.objects.filter_by_specifiers("space:%s" % space2.name),
1062 [iface2],
1063 )
1064- self.assertItemsEqual(
1065+ self.assertCountEqual(
1066 Interface.objects.filter_by_specifiers(
1067 ["space:%s" % space1.name, "space:%s" % space2.name]
1068 ),
1069@@ -689,17 +689,17 @@ class TestInterfaceQueriesMixin(MAASServerTestCase):
1070 )
1071 iface1 = node1.get_boot_interface()
1072 iface2 = node2.get_boot_interface()
1073- self.assertItemsEqual(
1074+ self.assertCountEqual(
1075 Interface.objects.filter_by_specifiers("space:%s" % space1.name),
1076 [iface1],
1077 )
1078- self.assertItemsEqual(
1079+ self.assertCountEqual(
1080 Interface.objects.filter_by_specifiers(
1081 "space:%s" % Space.UNDEFINED
1082 ),
1083 [iface2],
1084 )
1085- self.assertItemsEqual(
1086+ self.assertCountEqual(
1087 Interface.objects.filter_by_specifiers(
1088 ["space:%s" % space1.name, "space:%s" % Space.UNDEFINED]
1089 ),
1090@@ -715,16 +715,16 @@ class TestInterfaceQueriesMixin(MAASServerTestCase):
1091 iftype=INTERFACE_TYPE.VLAN, parents=[physical]
1092 )
1093 unknown = factory.make_Interface(iftype=INTERFACE_TYPE.UNKNOWN)
1094- self.assertItemsEqual(
1095+ self.assertCountEqual(
1096 Interface.objects.filter_by_specifiers("type:physical"), [physical]
1097 )
1098- self.assertItemsEqual(
1099+ self.assertCountEqual(
1100 Interface.objects.filter_by_specifiers("type:vlan"), [vlan]
1101 )
1102- self.assertItemsEqual(
1103+ self.assertCountEqual(
1104 Interface.objects.filter_by_specifiers("type:bond"), [bond]
1105 )
1106- self.assertItemsEqual(
1107+ self.assertCountEqual(
1108 Interface.objects.filter_by_specifiers("type:unknown"), [unknown]
1109 )
1110
1111@@ -745,10 +745,10 @@ class TestInterfaceQueriesMixin(MAASServerTestCase):
1112 subnet=subnet2,
1113 interface=iface2,
1114 )
1115- self.assertItemsEqual(
1116+ self.assertCountEqual(
1117 Interface.objects.filter_by_specifiers("ip:10.0.0.1"), [iface1]
1118 )
1119- self.assertItemsEqual(
1120+ self.assertCountEqual(
1121 Interface.objects.filter_by_specifiers("ip:10.0.1.1"), [iface2]
1122 )
1123
1124@@ -777,7 +777,7 @@ class TestInterfaceQueriesMixin(MAASServerTestCase):
1125 subnet=subnet3,
1126 interface=iface3,
1127 )
1128- self.assertItemsEqual(
1129+ self.assertCountEqual(
1130 [iface1, iface2],
1131 Interface.objects.filter_by_specifiers("mode:unconfigured"),
1132 )
1133@@ -800,17 +800,17 @@ class TestInterfaceQueriesMixin(MAASServerTestCase):
1134 nodes1, map1 = Interface.objects.get_matching_node_map(
1135 "space:%s" % space1.name
1136 )
1137- self.assertItemsEqual(nodes1, [node1.id])
1138+ self.assertCountEqual(nodes1, [node1.id])
1139 self.assertEqual(map1, {node1.id: [iface1.id]})
1140 nodes2, map2 = Interface.objects.get_matching_node_map(
1141 "space:%s" % space2.name
1142 )
1143- self.assertItemsEqual(nodes2, [node2.id])
1144+ self.assertEqual(nodes2, {node2.id})
1145 self.assertEqual(map2, {node2.id: [iface2.id]})
1146 nodes3, map3 = Interface.objects.get_matching_node_map(
1147 ["space:%s" % space1.name, "space:%s" % space2.name]
1148 )
1149- self.assertItemsEqual(nodes3, [node1.id, node2.id])
1150+ self.assertEqual(nodes3, {node1.id, node2.id})
1151 self.assertEqual(map3, {node1.id: [iface1.id], node2.id: [iface2.id]})
1152
1153 def test_get_matching_node_map_with_multiple_interfaces(self):
1154@@ -833,18 +833,18 @@ class TestInterfaceQueriesMixin(MAASServerTestCase):
1155 nodes1, map1 = Interface.objects.get_matching_node_map(
1156 "space:%s" % space1.name
1157 )
1158- self.assertItemsEqual(nodes1, {node1.id})
1159+ self.assertEqual(nodes1, {node1.id})
1160 map1[node1.id].sort()
1161 self.assertEqual(map1, {node1.id: sorted([iface1.id, iface3.id])})
1162 nodes2, map2 = Interface.objects.get_matching_node_map(
1163 "space:%s" % space2.name
1164 )
1165- self.assertItemsEqual(nodes2, {node2.id})
1166+ self.assertEqual(nodes2, {node2.id})
1167 self.assertEqual(map2, {node2.id: [iface2.id]})
1168 nodes3, map3 = Interface.objects.get_matching_node_map(
1169 ["space:%s" % space1.name, "space:%s" % space2.name]
1170 )
1171- self.assertItemsEqual(nodes3, {node1.id, node2.id})
1172+ self.assertEqual(nodes3, {node1.id, node2.id})
1173 map3[node1.id].sort()
1174 self.assertEqual(
1175 map3,
1176@@ -860,9 +860,9 @@ class TestInterfaceQueriesMixin(MAASServerTestCase):
1177 )
1178 # Other interface with subset of tags.
1179 factory.make_Interface(INTERFACE_TYPE.PHYSICAL, tags=tags[1:])
1180- nodes, map = Interface.objects.get_matching_node_map(tags_specifier)
1181- self.assertItemsEqual(nodes, [node.id])
1182- self.assertEqual(map, {node.id: [interface.id]})
1183+ nodes, map_ = Interface.objects.get_matching_node_map(tags_specifier)
1184+ self.assertEqual(nodes, {node.id})
1185+ self.assertEqual(map_, {node.id: [interface.id]})
1186
1187 def test_get_matching_node_map_by_tag(self):
1188 tags = [factory.make_name("tag")]
1189@@ -870,11 +870,11 @@ class TestInterfaceQueriesMixin(MAASServerTestCase):
1190 interface = factory.make_Interface(
1191 INTERFACE_TYPE.PHYSICAL, node=node, tags=tags
1192 )
1193- nodes, map = Interface.objects.get_matching_node_map(
1194+ nodes, map_ = Interface.objects.get_matching_node_map(
1195 "tag:%s" % random.choice(tags)
1196 )
1197- self.assertItemsEqual(nodes, [node.id])
1198- self.assertEqual(map, {node.id: [interface.id]})
1199+ self.assertEqual(nodes, {node.id})
1200+ self.assertEqual(map_, {node.id: [interface.id]})
1201
1202
1203 class TestAllInterfacesParentsFirst(MAASServerTestCase):
1204@@ -1294,20 +1294,20 @@ class InterfaceTest(MAASServerTestCase):
1205 interface = factory.make_Interface(INTERFACE_TYPE.PHYSICAL, tags=[])
1206 tag = factory.make_name("tag")
1207 interface.add_tag(tag)
1208- self.assertItemsEqual([tag], interface.tags)
1209+ self.assertEqual([tag], interface.tags)
1210
1211 def test_add_tag_doesnt_duplicate(self):
1212 interface = factory.make_Interface(INTERFACE_TYPE.PHYSICAL, tags=[])
1213 tag = factory.make_name("tag")
1214 interface.add_tag(tag)
1215 interface.add_tag(tag)
1216- self.assertItemsEqual([tag], interface.tags)
1217+ self.assertEqual([tag], interface.tags)
1218
1219 def test_remove_tag_deletes_tag(self):
1220 tag = factory.make_name("tag")
1221 interface = factory.make_Interface(INTERFACE_TYPE.PHYSICAL, tags=[tag])
1222 interface.remove_tag(tag)
1223- self.assertItemsEqual([], interface.tags)
1224+ self.assertEqual([], interface.tags)
1225
1226 def test_remove_tag_doesnt_error_on_missing_tag(self):
1227 interface = factory.make_Interface(INTERFACE_TYPE.PHYSICAL, tags=[])
1228@@ -1536,7 +1536,7 @@ class TestPhysicalInterface(MAASServerTestCase):
1229 factory.make_Interface(
1230 INTERFACE_TYPE.VLAN, vlan=vlan, parents=[parent]
1231 )
1232- self.assertItemsEqual([parent], PhysicalInterface.objects.all())
1233+ self.assertCountEqual([parent], PhysicalInterface.objects.all())
1234
1235 def test_serialize(self):
1236 interface = factory.make_Interface(INTERFACE_TYPE.PHYSICAL)
1237@@ -1795,7 +1795,7 @@ class VLANInterfaceTest(MAASServerTestCase):
1238 interface = factory.make_Interface(
1239 INTERFACE_TYPE.VLAN, vlan=vlan, parents=[parent]
1240 )
1241- self.assertItemsEqual([interface], VLANInterface.objects.all())
1242+ self.assertCountEqual([interface], VLANInterface.objects.all())
1243
1244 def test_get_node_returns_parent_node(self):
1245 node = factory.make_Node()
1246@@ -1963,7 +1963,7 @@ class BondInterfaceTest(MAASServerTestCase):
1247 interface = factory.make_Interface(
1248 INTERFACE_TYPE.BOND, parents=[parent1, parent2]
1249 )
1250- self.assertItemsEqual([interface], BondInterface.objects.all())
1251+ self.assertCountEqual([interface], BondInterface.objects.all())
1252
1253 def test_get_node_returns_parent_node(self):
1254 node = factory.make_Node()
1255@@ -1972,7 +1972,7 @@ class BondInterfaceTest(MAASServerTestCase):
1256 interface = factory.make_Interface(
1257 INTERFACE_TYPE.BOND, parents=[parent1, parent2]
1258 )
1259- self.assertItemsEqual([interface], BondInterface.objects.all())
1260+ self.assertCountEqual([interface], BondInterface.objects.all())
1261 self.assertEqual(node, interface.get_node())
1262
1263 def test_removed_if_underlying_interfaces_gets_removed(self):
1264@@ -2116,7 +2116,7 @@ class BridgeInterfaceTest(MAASServerTestCase):
1265 interface = factory.make_Interface(
1266 INTERFACE_TYPE.BRIDGE, parents=[parent1, parent2]
1267 )
1268- self.assertItemsEqual([interface], BridgeInterface.objects.all())
1269+ self.assertCountEqual([interface], BridgeInterface.objects.all())
1270
1271 def test_get_node_returns_parent_node(self):
1272 node = factory.make_Node()
1273@@ -2125,7 +2125,7 @@ class BridgeInterfaceTest(MAASServerTestCase):
1274 interface = factory.make_Interface(
1275 INTERFACE_TYPE.BRIDGE, parents=[parent1, parent2]
1276 )
1277- self.assertItemsEqual([interface], BridgeInterface.objects.all())
1278+ self.assertCountEqual([interface], BridgeInterface.objects.all())
1279 self.assertEqual(node, interface.get_node())
1280
1281 def test_removed_if_underlying_interfaces_gets_removed(self):
1282@@ -2259,7 +2259,7 @@ class BridgeInterfaceTest(MAASServerTestCase):
1283 class UnknownInterfaceTest(MAASServerTestCase):
1284 def test_manager_returns_unknown_interfaces(self):
1285 unknown = factory.make_Interface(INTERFACE_TYPE.UNKNOWN)
1286- self.assertItemsEqual([unknown], UnknownInterface.objects.all())
1287+ self.assertCountEqual([unknown], UnknownInterface.objects.all())
1288
1289 def test_get_node_returns_None(self):
1290 interface = factory.make_Interface(INTERFACE_TYPE.UNKNOWN)
1291@@ -2901,7 +2901,7 @@ class TestEnsureLinkUp(MAASServerTestCase):
1292 alloc_type=IPADDRESS_TYPE.AUTO, interface=interface
1293 )
1294 interface.ensure_link_up()
1295- self.assertItemsEqual([], reload_objects(StaticIPAddress, link_ups))
1296+ self.assertCountEqual([], reload_objects(StaticIPAddress, link_ups))
1297
1298 def test_creates_link_up_to_discovered_subnet_on_same_vlan(self):
1299 interface = factory.make_Interface(INTERFACE_TYPE.PHYSICAL)
1300@@ -3495,7 +3495,7 @@ class TestClaimAutoIPs(MAASTransactionServerTestCase):
1301 len(assigned_addresses),
1302 "Should have 3 AUTO IP addresses with an IP address assigned.",
1303 )
1304- self.assertItemsEqual(assigned_addresses, observed)
1305+ self.assertEqual(assigned_addresses, observed)
1306
1307 def test_keeps_ip_address_ids_consistent(self):
1308 auto_ip_ids = []
1309@@ -3525,11 +3525,9 @@ class TestClaimAutoIPs(MAASTransactionServerTestCase):
1310 len(assigned_addresses),
1311 "Should have 3 AUTO IP addresses with an IP address assigned.",
1312 )
1313- self.assertItemsEqual(assigned_addresses, observed)
1314+ self.assertEqual(assigned_addresses, observed)
1315 # Make sure the IDs didn't change upon allocation.
1316- self.assertItemsEqual(
1317- auto_ip_ids, (ip.id for ip in assigned_addresses)
1318- )
1319+ self.assertEqual(auto_ip_ids, [ip.id for ip in assigned_addresses])
1320
1321 def test_claims_all_missing_assigned_auto_ip_addresses(self):
1322 with transaction.atomic():
1323@@ -3722,7 +3720,7 @@ class TestClaimAutoIPs(MAASTransactionServerTestCase):
1324 "Should have 3 AUTO IP addresses with an IP address assigned "
1325 "and temp_expires_on set.",
1326 )
1327- self.assertItemsEqual(assigned_addresses, observed)
1328+ self.assertCountEqual(assigned_addresses, observed)
1329
1330
1331 class TestCreateAcquiredBridge(MAASServerTestCase):
1332@@ -3846,7 +3844,7 @@ class TestReleaseAutoIPs(MAASServerTestCase):
1333 len(releases_addresses),
1334 "Should have 3 AUTO IP addresses with no IP address assigned.",
1335 )
1336- self.assertItemsEqual(releases_addresses, observed)
1337+ self.assertCountEqual(releases_addresses, observed)
1338
1339 def test_clears_only_auto_ips_with_ips(self):
1340 interface = factory.make_Interface(INTERFACE_TYPE.PHYSICAL)
1341diff --git a/src/maasserver/models/tests/test_keysource.py b/src/maasserver/models/tests/test_keysource.py
1342index 0720504..70d23f5 100644
1343--- a/src/maasserver/models/tests/test_keysource.py
1344+++ b/src/maasserver/models/tests/test_keysource.py
1345@@ -55,7 +55,7 @@ class TestKeySource(MAASServerTestCase):
1346 mock_get_protocol_keys, MockCalledOnceWith(protocol, auth_id)
1347 )
1348 self.expectThat(SSHKey.objects.count(), Equals(2))
1349- self.assertItemsEqual(
1350+ self.assertCountEqual(
1351 returned_sshkeys, SSHKey.objects.filter(keysource=keysource)
1352 )
1353
1354diff --git a/src/maasserver/models/tests/test_node.py b/src/maasserver/models/tests/test_node.py
1355index 8d63f6f..0b31991 100644
1356--- a/src/maasserver/models/tests/test_node.py
1357+++ b/src/maasserver/models/tests/test_node.py
1358@@ -324,9 +324,9 @@ class TestNodeGetLatestScriptResults(MAASServerTestCase):
1359 factory.make_ScriptResult(script=script, script_set=script_set)
1360 )
1361
1362- self.assertItemsEqual(
1363+ self.assertEqual(
1364 sorted(latest_script_results, key=lambda x: x.name),
1365- node.get_latest_script_results,
1366+ list(node.get_latest_script_results),
1367 )
1368
1369 def test_get_latest_script_results_storage(self):
1370@@ -346,7 +346,7 @@ class TestNodeGetLatestScriptResults(MAASServerTestCase):
1371 )
1372 script_results.append(script_result)
1373
1374- self.assertItemsEqual(
1375+ self.assertEqual(
1376 sorted([script_result.id for script_result in script_results]),
1377 sorted(
1378 [
1379@@ -373,7 +373,7 @@ class TestNodeGetLatestScriptResults(MAASServerTestCase):
1380 )
1381 script_results.append(script_result)
1382
1383- self.assertItemsEqual(
1384+ self.assertEqual(
1385 sorted([script_result.id for script_result in script_results]),
1386 sorted(
1387 [
1388@@ -403,9 +403,9 @@ class TestNodeGetLatestScriptResults(MAASServerTestCase):
1389 if script.script_type == SCRIPT_TYPE.COMMISSIONING:
1390 latest_script_results.append(script_result)
1391
1392- self.assertItemsEqual(
1393+ self.assertEqual(
1394 sorted(latest_script_results, key=lambda x: x.name),
1395- node.get_latest_commissioning_script_results,
1396+ list(node.get_latest_commissioning_script_results),
1397 )
1398
1399 def test_get_latest_testing_script_results(self):
1400@@ -428,9 +428,9 @@ class TestNodeGetLatestScriptResults(MAASServerTestCase):
1401 if script.script_type == SCRIPT_TYPE.TESTING:
1402 latest_script_results.append(script_result)
1403
1404- self.assertItemsEqual(
1405+ self.assertEqual(
1406 sorted(latest_script_results, key=lambda x: x.name),
1407- node.get_latest_testing_script_results,
1408+ list(node.get_latest_testing_script_results),
1409 )
1410
1411 def test_get_latest_installation_script_results(self):
1412@@ -452,7 +452,7 @@ class TestNodeGetLatestScriptResults(MAASServerTestCase):
1413 )
1414 ]
1415
1416- self.assertItemsEqual(
1417+ self.assertCountEqual(
1418 latest_script_results, node.get_latest_installation_script_results
1419 )
1420
1421@@ -470,7 +470,7 @@ class TestNodeManager(MAASServerTestCase):
1422 factory.make_Node(node_type=NODE_TYPE.RACK_CONTROLLER)
1423 for _ in range(3)
1424 ]
1425- self.assertItemsEqual(
1426+ self.assertCountEqual(
1427 machines + devices + rack_controllers, Node.objects.all()
1428 )
1429
1430@@ -496,13 +496,13 @@ class TestMachineManager(MAASServerTestCase):
1431 factory.make_Node(node_type=NODE_TYPE.RACK_CONTROLLER)
1432 for _ in range(3)
1433 ]
1434- self.assertItemsEqual(machines, Machine.objects.all())
1435+ self.assertCountEqual(machines, Machine.objects.all())
1436
1437 def test_get_available_machines_finds_available_machines(self):
1438 user = factory.make_User()
1439 machine1 = self.make_machine(None)
1440 machine2 = self.make_machine(None)
1441- self.assertItemsEqual(
1442+ self.assertCountEqual(
1443 [machine1, machine2],
1444 Machine.objects.get_available_machines_for_acquisition(user),
1445 )
1446@@ -550,7 +550,7 @@ class TestControllerManager(MAASServerTestCase):
1447 NODE_TYPE.REGION_AND_RACK_CONTROLLER,
1448 ):
1449 racks_and_regions.add(factory.make_Node(node_type=node_type))
1450- self.assertItemsEqual(racks_and_regions, Controller.objects.all())
1451+ self.assertCountEqual(racks_and_regions, Controller.objects.all())
1452
1453
1454 class TestRackControllerManager(MAASServerTestCase):
1455@@ -576,7 +576,7 @@ class TestRackControllerManager(MAASServerTestCase):
1456 factory.make_Node(node_type=NODE_TYPE.RACK_CONTROLLER)
1457 for _ in range(3)
1458 ]
1459- self.assertItemsEqual(rack_controllers, RackController.objects.all())
1460+ self.assertCountEqual(rack_controllers, RackController.objects.all())
1461
1462 def test_get_running_controller(self):
1463 rack = factory.make_RackController()
1464@@ -596,7 +596,7 @@ class TestRackControllerManager(MAASServerTestCase):
1465 url = factory.pick_ip_in_Subnet(accessible_subnet)
1466 mock_getaddr_info = self.patch(node_module.socket, "getaddrinfo")
1467 mock_getaddr_info.return_value = (("", "", "", "", (url,)),)
1468- self.assertItemsEqual(
1469+ self.assertCountEqual(
1470 accessible_racks,
1471 RackController.objects.filter_by_url_accessible(url, False),
1472 )
1473@@ -617,11 +617,11 @@ class TestRackControllerManager(MAASServerTestCase):
1474 ip = factory.pick_ip_in_Subnet(accessible_subnet)
1475 mock_getaddr_info = self.patch(node_module.socket, "getaddrinfo")
1476 mock_getaddr_info.return_value = (("", "", "", "", (ip,)),)
1477- self.assertItemsEqual(
1478- (accessible_rack,),
1479+ self.assertEqual(
1480+ [accessible_rack],
1481 RackController.objects.filter_by_url_accessible(url, False),
1482 )
1483- self.assertThat(mock_getaddr_info, MockCalledOnceWith(hostname, None))
1484+ mock_getaddr_info.assert_called_once_with(hostname, None)
1485
1486 def test_filter_by_url_accessible_parses_host_port(self):
1487 hostname = factory.make_hostname()
1488@@ -632,11 +632,11 @@ class TestRackControllerManager(MAASServerTestCase):
1489 ip = factory.pick_ip_in_Subnet(accessible_subnet)
1490 mock_getaddr_info = self.patch(node_module.socket, "getaddrinfo")
1491 mock_getaddr_info.return_value = (("", "", "", "", (ip,)),)
1492- self.assertItemsEqual(
1493- (accessible_rack,),
1494+ self.assertEqual(
1495+ [accessible_rack],
1496 RackController.objects.filter_by_url_accessible(url, False),
1497 )
1498- self.assertThat(mock_getaddr_info, MockCalledOnceWith(hostname, None))
1499+ mock_getaddr_info.assert_called_once_with(hostname, None)
1500
1501 def test_filter_by_url_accessible_parses_host_user_pass(self):
1502 hostname = factory.make_hostname()
1503@@ -651,11 +651,11 @@ class TestRackControllerManager(MAASServerTestCase):
1504 ip = factory.pick_ip_in_Subnet(accessible_subnet)
1505 mock_getaddr_info = self.patch(node_module.socket, "getaddrinfo")
1506 mock_getaddr_info.return_value = (("", "", "", "", (ip,)),)
1507- self.assertItemsEqual(
1508- (accessible_rack,),
1509+ self.assertEqual(
1510+ [accessible_rack],
1511 RackController.objects.filter_by_url_accessible(url, False),
1512 )
1513- self.assertThat(mock_getaddr_info, MockCalledOnceWith(hostname, None))
1514+ mock_getaddr_info.assert_called_once_with(hostname, None)
1515
1516 def test_filter_by_url_finds_self_with_loopback(self):
1517 rack = self.make_rack_controller_with_ip()
1518@@ -683,7 +683,7 @@ class TestRackControllerManager(MAASServerTestCase):
1519 mock_getaddr_info.return_value = (("", "", "", "", (ip,)),)
1520 mock_getallclients = self.patch(node_module, "getAllClients")
1521 mock_getallclients.return_value = connections
1522- self.assertItemsEqual(
1523+ self.assertCountEqual(
1524 accessible_racks,
1525 RackController.objects.filter_by_url_accessible(ip, True),
1526 )
1527@@ -725,7 +725,7 @@ class TestRegionControllerManager(MAASServerTestCase):
1528 # Create region controllers.
1529 regions = [factory.make_RegionController() for _ in range(3)]
1530 # Only the region controllers are found.
1531- self.assertItemsEqual(regions, RegionController.objects.all())
1532+ self.assertCountEqual(regions, RegionController.objects.all())
1533
1534 def test_get_running_controller_finds_controller_via_maas_id(self):
1535 region = factory.make_RegionController()
1536@@ -962,7 +962,7 @@ class TestDeviceManager(MAASServerTestCase):
1537 factory.make_Node(node_type=NODE_TYPE.RACK_CONTROLLER)
1538 for _ in range(3)
1539 ]
1540- self.assertItemsEqual(devices, Device.objects.all())
1541+ self.assertCountEqual(devices, Device.objects.all())
1542
1543 def test_empty_architecture_accepted_for_type_device(self):
1544 device = factory.make_Device(architecture="")
1545@@ -1296,7 +1296,7 @@ class TestNode(MAASServerTestCase):
1546 device = factory.make_PhysicalBlockDevice(node=node)
1547 factory.make_BlockDevice(node=node)
1548 factory.make_PhysicalBlockDevice()
1549- self.assertItemsEqual([device], node.physicalblockdevice_set.all())
1550+ self.assertCountEqual([device], node.physicalblockdevice_set.all())
1551
1552 def test_storage_returns_size_of_physical_blockdevices_in_mb(self):
1553 node = factory.make_Node(with_boot_disk=False)
1554@@ -1628,7 +1628,7 @@ class TestNode(MAASServerTestCase):
1555 node = factory.make_Node(status=NODE_STATUS.ALLOCATED)
1556 system_id = node.system_id
1557 node.delete()
1558- self.assertItemsEqual([], Node.objects.filter(system_id=system_id))
1559+ self.assertCountEqual([], Node.objects.filter(system_id=system_id))
1560
1561 def test_set_random_hostname_set_hostname(self):
1562 node = factory.make_Node()
1563@@ -2885,7 +2885,7 @@ class TestNode(MAASServerTestCase):
1564 alloc_type=IPADDRESS_TYPE.DISCOVERED,
1565 interface=interfaces[2],
1566 )
1567- self.assertItemsEqual(
1568+ self.assertCountEqual(
1569 [ip.ip for ip in ip_addresses], node.dynamic_ip_addresses()
1570 )
1571
1572@@ -2900,7 +2900,7 @@ class TestNode(MAASServerTestCase):
1573 # Create another node with a static IP address.
1574 other_node = factory.make_Node(interface=True)
1575 factory.make_StaticIPAddress(interface=other_node.get_boot_interface())
1576- self.assertItemsEqual([ip1.ip, ip2.ip], node.static_ip_addresses())
1577+ self.assertCountEqual([ip1.ip, ip2.ip], node.static_ip_addresses())
1578
1579 def test_ip_addresses_returns_static_ip_addresses_if_allocated(self):
1580 # If both static and dynamic IP addresses are present, the static
1581@@ -2910,7 +2910,7 @@ class TestNode(MAASServerTestCase):
1582 node = factory.make_Node(interface=True)
1583 interface = node.get_boot_interface()
1584 ip = factory.make_StaticIPAddress(interface=interface)
1585- self.assertItemsEqual([ip.ip], node.ip_addresses())
1586+ self.assertCountEqual([ip.ip], node.ip_addresses())
1587
1588 def test_ip_addresses_returns_dynamic_ip_if_no_static_ip(self):
1589 node = factory.make_Node()
1590@@ -2918,7 +2918,7 @@ class TestNode(MAASServerTestCase):
1591 ip = factory.make_StaticIPAddress(
1592 alloc_type=IPADDRESS_TYPE.DISCOVERED, interface=interface
1593 )
1594- self.assertItemsEqual([ip.ip], node.ip_addresses())
1595+ self.assertCountEqual([ip.ip], node.ip_addresses())
1596
1597 def test_ip_addresses_includes_static_ipv4_addresses_by_default(self):
1598 node = factory.make_Node()
1599@@ -2928,7 +2928,7 @@ class TestNode(MAASServerTestCase):
1600 ipv4_address,
1601 ipv6_address,
1602 ]
1603- self.assertItemsEqual(
1604+ self.assertCountEqual(
1605 [ipv4_address, ipv6_address], node.ip_addresses()
1606 )
1607
1608@@ -2940,7 +2940,7 @@ class TestNode(MAASServerTestCase):
1609 ipv4_address,
1610 ipv6_address,
1611 ]
1612- self.assertItemsEqual(
1613+ self.assertCountEqual(
1614 [ipv4_address, ipv6_address], node.ip_addresses()
1615 )
1616
1617@@ -2955,7 +2955,7 @@ class TestNode(MAASServerTestCase):
1618 )
1619 vlan_bond = factory.make_Interface(INTERFACE_TYPE.VLAN, parents=[bond])
1620
1621- self.assertItemsEqual(
1622+ self.assertCountEqual(
1623 [phy1, phy2, phy3, vlan, bond, vlan_bond], node.interface_set.all()
1624 )
1625
1626@@ -2966,7 +2966,7 @@ class TestNode(MAASServerTestCase):
1627 phy = factory.make_Interface(INTERFACE_TYPE.PHYSICAL, node=node)
1628 vlan = factory.make_Interface(INTERFACE_TYPE.VLAN, parents=[phy])
1629
1630- self.assertItemsEqual([phy, vlan], node.interface_set.all())
1631+ self.assertCountEqual([phy, vlan], node.interface_set.all())
1632
1633 def test_get_interface_names_returns_interface_name(self):
1634 node = factory.make_Node()
1635@@ -3565,11 +3565,11 @@ class TestNode(MAASServerTestCase):
1636 commissioning_script_set = node.current_commissioning_script_set
1637 testing_script_set = node.current_testing_script_set
1638
1639- self.assertItemsEqual(
1640+ self.assertCountEqual(
1641 set(expected_commissioning_scripts),
1642 [script_result.name for script_result in commissioning_script_set],
1643 )
1644- self.assertItemsEqual(
1645+ self.assertCountEqual(
1646 set(expected_testing_scripts),
1647 [script_result.name for script_result in testing_script_set],
1648 )
1649@@ -4139,7 +4139,7 @@ class TestNode(MAASServerTestCase):
1650 node = reload_object(node)
1651 testing_script_set = node.current_testing_script_set
1652
1653- self.assertItemsEqual(
1654+ self.assertCountEqual(
1655 set(expected_testing_scripts),
1656 [script_result.name for script_result in testing_script_set],
1657 )
1658@@ -4968,7 +4968,7 @@ class TestNode(MAASServerTestCase):
1659 node.boot_interface = interfaces[boot_interface_index]
1660 node.save()
1661 del interfaces[boot_interface_index]
1662- self.assertItemsEqual(
1663+ self.assertCountEqual(
1664 [interface.mac_address for interface in interfaces],
1665 node.get_extra_macs(),
1666 )
1667@@ -4979,7 +4979,7 @@ class TestNode(MAASServerTestCase):
1668 factory.make_Interface(INTERFACE_TYPE.PHYSICAL, node=node)
1669 for _ in range(3)
1670 ]
1671- self.assertItemsEqual(
1672+ self.assertCountEqual(
1673 [interface.mac_address for interface in interfaces[1:]],
1674 node.get_extra_macs(),
1675 )
1676@@ -5558,7 +5558,7 @@ class TestNode(MAASServerTestCase):
1677 factory.make_FilesystemGroup(
1678 node=node, group_type=FILESYSTEM_GROUP_TYPE.BCACHE
1679 )
1680- self.assertItemsEqual(
1681+ self.assertEqual(
1682 [
1683 "This node cannot be deployed because the selected deployment "
1684 "OS, %s, does not support Bcache." % osystem
1685@@ -5573,7 +5573,7 @@ class TestNode(MAASServerTestCase):
1686 factory.make_Filesystem(
1687 block_device=bd, fstype=FILESYSTEM_TYPE.ZFSROOT
1688 )
1689- self.assertItemsEqual(
1690+ self.assertEqual(
1691 [
1692 "This node cannot be deployed because the selected deployment "
1693 "OS, %s, does not support ZFS." % osystem
1694@@ -5588,7 +5588,7 @@ class TestNode(MAASServerTestCase):
1695 )
1696 bd = factory.make_BlockDevice(node=node)
1697 factory.make_Filesystem(block_device=bd, fstype=FILESYSTEM_TYPE.BTRFS)
1698- self.assertItemsEqual(
1699+ self.assertEqual(
1700 [
1701 "This node cannot be deployed because the selected deployment "
1702 "OS release, %s %s, does not support BTRFS."
1703@@ -6306,20 +6306,20 @@ class NodeManagerTest(MAASServerTestCase):
1704 nodes = [factory.make_Node() for counter in range(5)]
1705 ids = [node.system_id for node in nodes]
1706 selection = slice(1, 3)
1707- self.assertItemsEqual(
1708+ self.assertCountEqual(
1709 nodes[selection],
1710 Node.objects.filter_by_ids(Node.objects.all(), ids[selection]),
1711 )
1712
1713 def test_filter_by_ids_with_empty_list_returns_empty(self):
1714 factory.make_Node()
1715- self.assertItemsEqual(
1716+ self.assertCountEqual(
1717 [], Node.objects.filter_by_ids(Node.objects.all(), [])
1718 )
1719
1720 def test_filter_by_ids_without_ids_returns_full(self):
1721 node = factory.make_Node()
1722- self.assertItemsEqual(
1723+ self.assertCountEqual(
1724 [node], Node.objects.filter_by_ids(Node.objects.all(), None)
1725 )
1726
1727@@ -6334,7 +6334,7 @@ class NodeManagerTest(MAASServerTestCase):
1728 user = factory.make_User()
1729 visible_nodes = [self.make_node(owner) for owner in [None, user]]
1730 self.make_node(factory.make_User())
1731- self.assertItemsEqual(
1732+ self.assertCountEqual(
1733 visible_nodes, Node.objects.get_nodes(user, NodePermission.view)
1734 )
1735
1736@@ -6342,7 +6342,7 @@ class NodeManagerTest(MAASServerTestCase):
1737 admin = factory.make_admin()
1738 owners = [None, factory.make_User(), factory.make_admin(), admin]
1739 nodes = [self.make_node(owner) for owner in owners]
1740- self.assertItemsEqual(
1741+ self.assertCountEqual(
1742 nodes, Node.objects.get_nodes(admin, NodePermission.view)
1743 )
1744
1745@@ -6351,7 +6351,7 @@ class NodeManagerTest(MAASServerTestCase):
1746 nodes = [self.make_node(user) for counter in range(5)]
1747 ids = [node.system_id for node in nodes]
1748 wanted_slice = slice(0, 3)
1749- self.assertItemsEqual(
1750+ self.assertCountEqual(
1751 nodes[wanted_slice],
1752 Node.objects.get_nodes(
1753 user, NodePermission.view, ids=ids[wanted_slice]
1754@@ -6365,7 +6365,7 @@ class NodeManagerTest(MAASServerTestCase):
1755 # Node that we'll exclude from from_nodes:
1756 factory.make_Node()
1757
1758- self.assertItemsEqual(
1759+ self.assertCountEqual(
1760 [wanted_node],
1761 Node.objects.get_nodes(
1762 admin,
1763@@ -6383,7 +6383,7 @@ class NodeManagerTest(MAASServerTestCase):
1764 # Node that will be ignored on account of belonging to someone else:
1765 invisible_node = factory.make_Node(owner=factory.make_User())
1766
1767- self.assertItemsEqual(
1768+ self.assertCountEqual(
1769 [matching_node],
1770 Node.objects.get_nodes(
1771 user,
1772@@ -6399,7 +6399,7 @@ class NodeManagerTest(MAASServerTestCase):
1773 visible_node = self.make_node(user)
1774 unowned = self.make_node(None)
1775 self.make_node(factory.make_User())
1776- self.assertItemsEqual(
1777+ self.assertCountEqual(
1778 [visible_node, unowned],
1779 Node.objects.get_nodes(user, NodePermission.edit),
1780 )
1781@@ -6408,14 +6408,14 @@ class NodeManagerTest(MAASServerTestCase):
1782 admin = factory.make_admin()
1783 owners = [None, factory.make_User(), factory.make_admin(), admin]
1784 nodes = [self.make_node(owner) for owner in owners]
1785- self.assertItemsEqual(
1786+ self.assertCountEqual(
1787 nodes, Node.objects.get_nodes(admin, NodePermission.edit)
1788 )
1789
1790 def test_get_nodes_with_admin_perm_returns_empty_list_for_user(self):
1791 user = factory.make_User()
1792 [self.make_node(user) for counter in range(5)]
1793- self.assertItemsEqual(
1794+ self.assertCountEqual(
1795 [], Node.objects.get_nodes(user, NodePermission.admin)
1796 )
1797
1798@@ -6425,7 +6425,7 @@ class NodeManagerTest(MAASServerTestCase):
1799 nodes.append(factory.make_RackController())
1800 nodes.append(factory.make_RegionController())
1801 nodes.append(factory.make_RegionRackController())
1802- self.assertItemsEqual(
1803+ self.assertCountEqual(
1804 nodes,
1805 Node.objects.get_nodes(factory.make_admin(), NodePermission.admin),
1806 )
1807@@ -6450,14 +6450,14 @@ class NodeManagerTest(MAASServerTestCase):
1808 observed = Node.objects.get_nodes(
1809 user=None, perm=NodePermission.edit, ids=[node.system_id]
1810 )
1811- self.assertItemsEqual([], observed)
1812+ self.assertCountEqual([], observed)
1813
1814 def test_get_nodes_only_returns_managed_nodes(self):
1815 user = factory.make_User()
1816 machine = self.make_node(user)
1817 for _ in range(3):
1818 self.make_node(user, node_type=NODE_TYPE.DEVICE)
1819- self.assertItemsEqual(
1820+ self.assertCountEqual(
1821 [machine],
1822 Machine.objects.get_nodes(
1823 user=user,
1824@@ -6476,11 +6476,11 @@ class NodeManagerTest(MAASServerTestCase):
1825 factory.make_RegionController(),
1826 factory.make_RegionRackController(),
1827 ]
1828- self.assertItemsEqual(
1829+ self.assertCountEqual(
1830 admin_visible_nodes,
1831 Node.objects.get_nodes(factory.make_admin(), NodePermission.admin),
1832 )
1833- self.assertItemsEqual(
1834+ self.assertCountEqual(
1835 user_visible_nodes,
1836 Node.objects.get_nodes(user, NodePermission.view),
1837 )
1838@@ -6498,7 +6498,7 @@ class NodeManagerTest(MAASServerTestCase):
1839 iface = node.get_boot_interface()
1840 ip = iface.ip_addresses.first()
1841 space = ip.subnet.space
1842- self.assertItemsEqual([node], Node.objects.filter_by_spaces([space]))
1843+ self.assertCountEqual([node], Node.objects.filter_by_spaces([space]))
1844
1845 def test_filter_nodes_by_not_spaces(self):
1846 factory.make_Space()
1847@@ -6513,7 +6513,7 @@ class NodeManagerTest(MAASServerTestCase):
1848 iface = node.get_boot_interface()
1849 ip = iface.ip_addresses.first()
1850 space = ip.subnet.space
1851- self.assertItemsEqual(
1852+ self.assertCountEqual(
1853 [extra_node], Node.objects.exclude_spaces([space])
1854 )
1855
1856@@ -6528,7 +6528,7 @@ class NodeManagerTest(MAASServerTestCase):
1857 )
1858 iface = node.get_boot_interface()
1859 fabric = iface.vlan.fabric
1860- self.assertItemsEqual([node], Node.objects.filter_by_fabrics([fabric]))
1861+ self.assertCountEqual([node], Node.objects.filter_by_fabrics([fabric]))
1862
1863 def test_filter_nodes_by_not_fabrics(self):
1864 fabric = factory.make_Fabric()
1865@@ -6540,7 +6540,7 @@ class NodeManagerTest(MAASServerTestCase):
1866 )
1867 iface = node.get_boot_interface()
1868 fabric = iface.vlan.fabric
1869- self.assertItemsEqual(
1870+ self.assertCountEqual(
1871 [extra_node], Node.objects.exclude_fabrics([fabric])
1872 )
1873
1874@@ -6553,7 +6553,7 @@ class NodeManagerTest(MAASServerTestCase):
1875 factory.make_Node_with_Interface_on_Subnet(
1876 with_dhcp_rack_primary=False, fabric=fabric2
1877 )
1878- self.assertItemsEqual(
1879+ self.assertCountEqual(
1880 [node1], Node.objects.filter_by_fabric_classes(["10g"])
1881 )
1882
1883@@ -6566,7 +6566,7 @@ class NodeManagerTest(MAASServerTestCase):
1884 node2 = factory.make_Node_with_Interface_on_Subnet(
1885 with_dhcp_rack_primary=False, fabric=fabric2
1886 )
1887- self.assertItemsEqual(
1888+ self.assertCountEqual(
1889 [node2], Node.objects.exclude_fabric_classes(["10g"])
1890 )
1891
1892@@ -6579,7 +6579,7 @@ class NodeManagerTest(MAASServerTestCase):
1893 factory.make_Node_with_Interface_on_Subnet(
1894 with_dhcp_rack_primary=False, vlan=vlan2
1895 )
1896- self.assertItemsEqual([node1], Node.objects.filter_by_vids([1]))
1897+ self.assertCountEqual([node1], Node.objects.filter_by_vids([1]))
1898
1899 def test_filter_nodes_by_not_vids(self):
1900 vlan1 = factory.make_VLAN(vid=1)
1901@@ -6590,7 +6590,7 @@ class NodeManagerTest(MAASServerTestCase):
1902 node2 = factory.make_Node_with_Interface_on_Subnet(
1903 with_dhcp_rack_primary=False, vlan=vlan2
1904 )
1905- self.assertItemsEqual([node2], Node.objects.exclude_vids([1]))
1906+ self.assertCountEqual([node2], Node.objects.exclude_vids([1]))
1907
1908 def test_filter_nodes_by_subnet(self):
1909 subnet1 = factory.make_Subnet()
1910@@ -6601,7 +6601,7 @@ class NodeManagerTest(MAASServerTestCase):
1911 factory.make_Node_with_Interface_on_Subnet(
1912 with_dhcp_rack_primary=False, subnet=subnet2
1913 )
1914- self.assertItemsEqual(
1915+ self.assertCountEqual(
1916 [node1], Node.objects.filter_by_subnets([subnet1])
1917 )
1918
1919@@ -6614,7 +6614,7 @@ class NodeManagerTest(MAASServerTestCase):
1920 node2 = factory.make_Node_with_Interface_on_Subnet(
1921 with_dhcp_rack_primary=False, subnet=subnet2
1922 )
1923- self.assertItemsEqual([node2], Node.objects.exclude_subnets([subnet1]))
1924+ self.assertCountEqual([node2], Node.objects.exclude_subnets([subnet1]))
1925
1926 def test_filter_nodes_by_subnet_cidr(self):
1927 subnet1 = factory.make_Subnet(cidr="192.168.1.0/24")
1928@@ -6625,7 +6625,7 @@ class NodeManagerTest(MAASServerTestCase):
1929 factory.make_Node_with_Interface_on_Subnet(
1930 with_dhcp_rack_primary=False, subnet=subnet2
1931 )
1932- self.assertItemsEqual(
1933+ self.assertCountEqual(
1934 [node1], Node.objects.filter_by_subnet_cidrs(["192.168.1.0/24"])
1935 )
1936
1937@@ -6638,7 +6638,7 @@ class NodeManagerTest(MAASServerTestCase):
1938 node2 = factory.make_Node_with_Interface_on_Subnet(
1939 with_dhcp_rack_primary=False, subnet=subnet2
1940 )
1941- self.assertItemsEqual(
1942+ self.assertCountEqual(
1943 [node2], Node.objects.exclude_subnet_cidrs(["192.168.1.0/24"])
1944 )
1945
1946@@ -6652,7 +6652,7 @@ class NodeManagerTest(MAASServerTestCase):
1947 node2 = factory.make_Node_with_Interface_on_Subnet(
1948 with_dhcp_rack_primary=False, subnet=subnet2, fabric=fabric1
1949 )
1950- self.assertItemsEqual(
1951+ self.assertCountEqual(
1952 [node2],
1953 Node.objects.filter_by_fabrics([fabric1]).exclude_subnet_cidrs(
1954 ["192.168.1.0/24"]
1955@@ -7080,7 +7080,7 @@ class TestNodeParentRelationShip(MAASServerTestCase):
1956 # Create other nodes.
1957 [factory.make_Node() for _ in range(3)]
1958 children = [factory.make_Node(parent=parent) for _ in range(3)]
1959- self.assertItemsEqual(parent.children.all(), children)
1960+ self.assertCountEqual(parent.children.all(), children)
1961
1962 def test_children_get_deleted_when_parent_is_deleted(self):
1963 parent = factory.make_Node()
1964@@ -7088,7 +7088,7 @@ class TestNodeParentRelationShip(MAASServerTestCase):
1965 [factory.make_Node(parent=parent) for _ in range(3)]
1966 other_nodes = [factory.make_Node() for _ in range(3)]
1967 parent.delete()
1968- self.assertItemsEqual(other_nodes, Node.objects.all())
1969+ self.assertCountEqual(other_nodes, Node.objects.all())
1970
1971 def test_children_get_deleted_when_parent_is_released(self):
1972 self.patch(Node, "_stop")
1973@@ -7100,8 +7100,8 @@ class TestNodeParentRelationShip(MAASServerTestCase):
1974 other_nodes = [factory.make_Node() for _ in range(3)]
1975 with post_commit_hooks:
1976 parent.release()
1977- self.assertItemsEqual([], parent.children.all())
1978- self.assertItemsEqual(other_nodes + [parent], Node.objects.all())
1979+ self.assertCountEqual([], parent.children.all())
1980+ self.assertCountEqual(other_nodes + [parent], Node.objects.all())
1981
1982
1983 class TestNodeNetworking(MAASTransactionServerTestCase):
1984@@ -7211,7 +7211,7 @@ class TestNodeNetworking(MAASTransactionServerTestCase):
1985 observed_interfaces = [
1986 call[0][0] for call in mock_claim_auto_ips.call_args_list
1987 ]
1988- self.assertItemsEqual(interfaces, observed_interfaces)
1989+ self.assertCountEqual(interfaces, observed_interfaces)
1990
1991 def test_claim_auto_ips_calls_claim_auto_ips_on_new_added_interface(self):
1992 node = factory.make_Node()
1993@@ -7235,7 +7235,7 @@ class TestNodeNetworking(MAASTransactionServerTestCase):
1994 observed_interfaces = [
1995 call[0][0] for call in mock_claim_auto_ips.call_args_list
1996 ]
1997- self.assertItemsEqual(interfaces, observed_interfaces)
1998+ self.assertCountEqual(interfaces, observed_interfaces)
1999
2000 def test_release_interface_config_calls_release_auto_ips_on_all(self):
2001 node = factory.make_Node()
2002@@ -7252,7 +7252,7 @@ class TestNodeNetworking(MAASTransactionServerTestCase):
2003 observed_interfaces = [
2004 call[0][0] for call in mock_release_auto_ips.call_args_list
2005 ]
2006- self.assertItemsEqual(interfaces, observed_interfaces)
2007+ self.assertCountEqual(interfaces, observed_interfaces)
2008
2009 def test_release_interface_config_handles_acquired_bridge(self):
2010 node = factory.make_Node()
2011@@ -7346,8 +7346,8 @@ class TestNodeNetworking(MAASTransactionServerTestCase):
2012 call[1]["clearing_config"]
2013 for call in mock_unlink_ip_address.call_args_list
2014 )
2015- self.assertItemsEqual([nic0, nic1], observed_interfaces)
2016- self.assertItemsEqual(
2017+ self.assertCountEqual([nic0, nic1], observed_interfaces)
2018+ self.assertCountEqual(
2019 [dhcp_ip, static_ip, auto_ip], observed_ip_address
2020 )
2021 self.assertEqual(set([True]), clearing_config)
2022@@ -7518,7 +7518,7 @@ class TestNodeNetworking(MAASTransactionServerTestCase):
2023 observed_interfaces = set(
2024 call[0][0] for call in mock_ensure_link_up.call_args_list
2025 )
2026- self.assertItemsEqual(enabled_interfaces, observed_interfaces)
2027+ self.assertCountEqual(enabled_interfaces, observed_interfaces)
2028
2029 def test_set_initial_networking_configuration_no_multiple_auto_ips(self):
2030 node = factory.make_Node_with_Interface_on_Subnet()
2031@@ -8340,7 +8340,7 @@ class TestGetDefaultDNSServers(MAASServerTestCase):
2032 for _ in range(3):
2033 rack_ip, _ = self.make_RackController_routable_to_node(node)
2034 rack_ips.append(rack_ip)
2035- self.assertItemsEqual(node.get_default_dns_servers(), rack_ips)
2036+ self.assertCountEqual(node.get_default_dns_servers(), rack_ips)
2037
2038 def test_uses_other_routeable_rack_controllers_ipv6(self):
2039 rack_v4, rack_v6, node = self.make_Node_with_RackController(
2040@@ -8350,7 +8350,7 @@ class TestGetDefaultDNSServers(MAASServerTestCase):
2041 for _ in range(3):
2042 rack_ip, _ = self.make_RackController_routable_to_node(node)
2043 rack_ips.append(rack_ip)
2044- self.assertItemsEqual(node.get_default_dns_servers(), rack_ips)
2045+ self.assertCountEqual(node.get_default_dns_servers(), rack_ips)
2046
2047 def test_uses_subnet_ipv4_gateway_with_other_routeable_racks(self):
2048 rack_v4, rack_v6, node = self.make_Node_with_RackController(
2049@@ -8360,7 +8360,7 @@ class TestGetDefaultDNSServers(MAASServerTestCase):
2050 for _ in range(3):
2051 rack_ip, _ = self.make_RackController_routable_to_node(node)
2052 rack_ips.append(rack_ip)
2053- self.assertItemsEqual(node.get_default_dns_servers(), rack_ips)
2054+ self.assertCountEqual(node.get_default_dns_servers(), rack_ips)
2055
2056 def test_uses_subnet_ipv6_gateway_with_other_routeable_racks(self):
2057 rack_v4, rack_v6, node = self.make_Node_with_RackController(
2058@@ -8370,7 +8370,7 @@ class TestGetDefaultDNSServers(MAASServerTestCase):
2059 for _ in range(3):
2060 rack_ip, _ = self.make_RackController_routable_to_node(node)
2061 rack_ips.append(rack_ip)
2062- self.assertItemsEqual(node.get_default_dns_servers(), rack_ips)
2063+ self.assertCountEqual(node.get_default_dns_servers(), rack_ips)
2064
2065 def test_ignores_dns_servers_on_unallowed_subnets(self):
2066 # Regression test for LP:1847537
2067@@ -8385,7 +8385,7 @@ class TestGetDefaultDNSServers(MAASServerTestCase):
2068 ipv6=False, ipv4_subnet_dns=[ipv4_subnet_dns]
2069 )
2070 Subnet.objects.update(allow_dns=False)
2071- self.assertItemsEqual(
2072+ self.assertCountEqual(
2073 node.get_default_dns_servers(), [ipv4_subnet_dns]
2074 )
2075
2076@@ -8396,7 +8396,7 @@ class TestGetDefaultDNSServers(MAASServerTestCase):
2077 ipv4=False, ipv6_subnet_dns=[ipv6_subnet_dns]
2078 )
2079 Subnet.objects.update(allow_dns=False)
2080- self.assertItemsEqual(
2081+ self.assertCountEqual(
2082 node.get_default_dns_servers(), [ipv6_subnet_dns]
2083 )
2084
2085@@ -8418,7 +8418,7 @@ class TestGetDefaultDNSServers(MAASServerTestCase):
2086 resolve_hostname.side_effect = lambda hostname, version: set(
2087 map(IPAddress, rack_ips)
2088 )
2089- self.assertItemsEqual(node.get_default_dns_servers(), [rack_v4])
2090+ self.assertCountEqual(node.get_default_dns_servers(), [rack_v4])
2091
2092
2093 class TestNode_Start(MAASTransactionServerTestCase):
2094@@ -9458,7 +9458,7 @@ class TestNode_Start(MAASTransactionServerTestCase):
2095
2096 def test_storage_layout_issues_none_non_vmfs_on_esxi(self):
2097 node = factory.make_Node(osystem="esxi", distro_series="6.7")
2098- self.assertItemsEqual([], node.storage_layout_issues())
2099+ self.assertCountEqual([], node.storage_layout_issues())
2100
2101 def test_storage_layout_issues_none_for_esxi_default(self):
2102 node = factory.make_Node(
2103@@ -9468,7 +9468,7 @@ class TestNode_Start(MAASTransactionServerTestCase):
2104 layout_class = random.choice([VMFS6StorageLayout, VMFS7StorageLayout])
2105 layout = layout_class(node)
2106 layout.configure()
2107- self.assertItemsEqual([], node.storage_layout_issues())
2108+ self.assertCountEqual([], node.storage_layout_issues())
2109
2110 def test_storage_layout_issues_is_invalid_no_datastore_on_esxi(self):
2111 node = factory.make_Node(
2112@@ -9493,7 +9493,7 @@ class TestNode_Start(MAASTransactionServerTestCase):
2113 layout_class = random.choice([VMFS6StorageLayout, VMFS7StorageLayout])
2114 layout = layout_class(node)
2115 layout.configure()
2116- self.assertItemsEqual(
2117+ self.assertEqual(
2118 [
2119 "Mount the root '/' filesystem to be able to deploy this node.",
2120 "This node cannot be deployed because the selected "
2121@@ -10743,13 +10743,13 @@ class TestRackController(MAASTransactionServerTestCase):
2122 rack = factory.make_RackController()
2123 factory.make_Service(rack)
2124 rack.delete()
2125- self.assertItemsEqual([], Service.objects.all())
2126+ self.assertCountEqual([], Service.objects.all())
2127
2128 def test_deletes_region_rack_rpc_connections(self):
2129 rack = factory.make_RackController()
2130 factory.make_RegionRackRPCConnection(rack_controller=rack)
2131 rack.delete()
2132- self.assertItemsEqual([], RegionRackRPCConnection.objects.all())
2133+ self.assertCountEqual([], RegionRackRPCConnection.objects.all())
2134
2135 def test_delete_converts_region_and_rack_to_region(self):
2136 region_and_rack = factory.make_Node(
2137@@ -10876,7 +10876,7 @@ class TestRackController(MAASTransactionServerTestCase):
2138 ).return_value = True
2139 images = rack_controller.list_boot_images()
2140 self.assertTrue(images["connected"])
2141- self.assertItemsEqual(self.expected_images, images["images"])
2142+ self.assertCountEqual(self.expected_images, images["images"])
2143 self.assertEqual("synced", images["status"])
2144 self.assertEqual("synced", rack_controller.get_image_sync_status())
2145
2146@@ -10884,7 +10884,7 @@ class TestRackController(MAASTransactionServerTestCase):
2147 rack_controller = factory.make_RackController()
2148 images = rack_controller.list_boot_images()
2149 self.assertEqual(False, images["connected"])
2150- self.assertItemsEqual([], images["images"])
2151+ self.assertCountEqual([], images["images"])
2152 self.assertEqual("unknown", images["status"])
2153 self.assertEqual("unknown", rack_controller.get_image_sync_status())
2154
2155@@ -10895,7 +10895,7 @@ class TestRackController(MAASTransactionServerTestCase):
2156 ).side_effect = ConnectionClosed()
2157 images = rack_controller.list_boot_images()
2158 self.assertEqual(False, images["connected"])
2159- self.assertItemsEqual([], images["images"])
2160+ self.assertCountEqual([], images["images"])
2161 self.assertEqual("unknown", images["status"])
2162 self.assertEqual("unknown", rack_controller.get_image_sync_status())
2163
2164@@ -10911,7 +10911,7 @@ class TestRackController(MAASTransactionServerTestCase):
2165 images = rack_controller.list_boot_images()
2166 self.assertThat(fake_is_import_resources_running, MockCalledOnce())
2167 self.assertTrue(images["connected"])
2168- self.assertItemsEqual(self.expected_images, images["images"])
2169+ self.assertCountEqual(self.expected_images, images["images"])
2170 self.assertEqual("region-importing", images["status"])
2171 self.assertEqual(
2172 "region-importing", rack_controller.get_image_sync_status()
2173@@ -10930,7 +10930,7 @@ class TestRackController(MAASTransactionServerTestCase):
2174 ).return_value = True
2175 images = rack_controller.list_boot_images()
2176 self.assertTrue(images["connected"])
2177- self.assertItemsEqual(self.expected_images, images["images"])
2178+ self.assertCountEqual(self.expected_images, images["images"])
2179 self.assertEqual("syncing", images["status"])
2180 self.assertEqual("syncing", rack_controller.get_image_sync_status())
2181
2182@@ -10947,7 +10947,7 @@ class TestRackController(MAASTransactionServerTestCase):
2183 ).return_value = False
2184 images = rack_controller.list_boot_images()
2185 self.assertTrue(images["connected"])
2186- self.assertItemsEqual(self.expected_images, images["images"])
2187+ self.assertCountEqual(self.expected_images, images["images"])
2188 self.assertEqual("out-of-sync", images["status"])
2189 self.assertEqual(
2190 "out-of-sync", rack_controller.get_image_sync_status()
2191@@ -10964,7 +10964,7 @@ class TestRackController(MAASTransactionServerTestCase):
2192 ).return_value = True
2193 images = rack_controller.list_boot_images()
2194 self.assertTrue(images["connected"])
2195- self.assertItemsEqual([], images["images"])
2196+ self.assertCountEqual([], images["images"])
2197 self.assertEqual("syncing", images["status"])
2198
2199 def test_is_import_images_running(self):
2200diff --git a/src/maasserver/models/tests/test_partition.py b/src/maasserver/models/tests/test_partition.py
2201index efb6b00..f72ec8a 100644
2202--- a/src/maasserver/models/tests/test_partition.py
2203+++ b/src/maasserver/models/tests/test_partition.py
2204@@ -59,7 +59,7 @@ class TestPartitionManager(MAASServerTestCase):
2205 size=MIN_PARTITION_SIZE
2206 )
2207 )
2208- self.assertItemsEqual(
2209+ self.assertCountEqual(
2210 free_partitions,
2211 Partition.objects.get_free_partitions_for_node(node),
2212 )
2213@@ -86,7 +86,7 @@ class TestPartitionManager(MAASServerTestCase):
2214 filesystem_group
2215 )
2216 )
2217- self.assertItemsEqual([partition], partitions_in_filesystem_group)
2218+ self.assertCountEqual([partition], partitions_in_filesystem_group)
2219
2220 def test_get_partition_by_id_or_name_returns_valid_with_id(self):
2221 partition = factory.make_Partition()
2222@@ -181,7 +181,7 @@ class TestPartitionManager(MAASServerTestCase):
2223 ]
2224 for _ in range(3):
2225 factory.make_Partition(tags=other_tags)
2226- self.assertItemsEqual(
2227+ self.assertCountEqual(
2228 partitions_with_tags, Partition.objects.filter_by_tags([tags[0]])
2229 )
2230
2231@@ -193,7 +193,7 @@ class TestPartitionManager(MAASServerTestCase):
2232 ]
2233 for _ in range(3):
2234 factory.make_Partition(tags=other_tags)
2235- self.assertItemsEqual(
2236+ self.assertCountEqual(
2237 partitions_with_tags, Partition.objects.filter_by_tags(tags)
2238 )
2239
2240@@ -201,7 +201,7 @@ class TestPartitionManager(MAASServerTestCase):
2241 tags = [factory.make_name("tag") for _ in range(3)]
2242 for _ in range(3):
2243 factory.make_Partition(tags=tags)
2244- self.assertItemsEqual(
2245+ self.assertCountEqual(
2246 [], Partition.objects.filter_by_tags([factory.make_name("tag")])
2247 )
2248
2249@@ -218,7 +218,7 @@ class TestPartitionManager(MAASServerTestCase):
2250 for tag in tags:
2251 yield tag
2252
2253- self.assertItemsEqual(
2254+ self.assertCountEqual(
2255 devices_with_tags,
2256 Partition.objects.filter_by_tags(tag_generator()),
2257 )
2258@@ -478,7 +478,7 @@ class TestPartition(MAASServerTestCase):
2259 layout = VMFS6StorageLayout(node)
2260 layout.configure()
2261 pt = bd.get_partitiontable()
2262- self.assertItemsEqual(
2263+ self.assertCountEqual(
2264 [1, 2, 3, 5, 6, 7, 8, 9],
2265 [part.get_partition_number() for part in pt.partitions.all()],
2266 )
2267@@ -491,7 +491,7 @@ class TestPartition(MAASServerTestCase):
2268 layout = VMFS7StorageLayout(node)
2269 layout.configure()
2270 pt = bd.get_partitiontable()
2271- self.assertItemsEqual(
2272+ self.assertCountEqual(
2273 [1, 5, 6, 7, 8],
2274 [part.get_partition_number() for part in pt.partitions.all()],
2275 )
2276@@ -694,18 +694,18 @@ class TestPartition(MAASServerTestCase):
2277 partition = Partition()
2278 tag = factory.make_name("tag")
2279 partition.add_tag(tag)
2280- self.assertItemsEqual([tag], partition.tags)
2281+ self.assertEqual([tag], partition.tags)
2282
2283 def test_add_tag_doesnt_duplicate(self):
2284 partition = Partition()
2285 tag = factory.make_name("tag")
2286 partition.add_tag(tag)
2287 partition.add_tag(tag)
2288- self.assertItemsEqual([tag], partition.tags)
2289+ self.assertEqual([tag], partition.tags)
2290
2291 def test_remove_tag_deletes_tag(self):
2292 partition = Partition()
2293 tag = factory.make_name("tag")
2294 partition.add_tag(tag)
2295 partition.remove_tag(tag)
2296- self.assertItemsEqual([], partition.tags)
2297+ self.assertEqual([], partition.tags)
2298diff --git a/src/maasserver/models/tests/test_resourcepool.py b/src/maasserver/models/tests/test_resourcepool.py
2299index 55f24e8..5776f89 100644
2300--- a/src/maasserver/models/tests/test_resourcepool.py
2301+++ b/src/maasserver/models/tests/test_resourcepool.py
2302@@ -124,7 +124,7 @@ class TestResourcePoolManagerGetResourcePools(MAASServerTestCase):
2303 def test_user_returns_all(self):
2304 user = factory.make_User()
2305 factory.make_ResourcePool()
2306- self.assertItemsEqual(
2307+ self.assertCountEqual(
2308 ResourcePool.objects.all(),
2309 ResourcePool.objects.get_resource_pools(user),
2310 )
2311@@ -136,7 +136,7 @@ class TestResourcePoolManagerGetResourcePools(MAASServerTestCase):
2312 factory.make_ResourcePool()
2313 self.rbac_store.add_pool(pool)
2314 self.rbac_store.allow(user.username, pool, "view")
2315- self.assertItemsEqual(
2316+ self.assertCountEqual(
2317 [pool], ResourcePool.objects.get_resource_pools(user)
2318 )
2319
2320@@ -147,6 +147,6 @@ class TestResourcePoolManagerGetResourcePools(MAASServerTestCase):
2321 factory.make_ResourcePool()
2322 self.rbac_store.add_pool(pool)
2323 self.rbac_store.allow(user.username, pool, "view-all")
2324- self.assertItemsEqual(
2325+ self.assertCountEqual(
2326 [pool], ResourcePool.objects.get_resource_pools(user)
2327 )
2328diff --git a/src/maasserver/models/tests/test_space.py b/src/maasserver/models/tests/test_space.py
2329index e21c4de..428f061 100644
2330--- a/src/maasserver/models/tests/test_space.py
2331+++ b/src/maasserver/models/tests/test_space.py
2332@@ -84,7 +84,7 @@ class TestSpaceManager(MAASServerTestCase):
2333 space = factory.make_Space()
2334 factory.make_Space()
2335 id = space.id
2336- self.assertItemsEqual(
2337+ self.assertCountEqual(
2338 Space.objects.filter_by_specifiers("%s" % id), [space]
2339 )
2340
2341@@ -93,7 +93,7 @@ class TestSpaceManager(MAASServerTestCase):
2342 space = factory.make_Space()
2343 factory.make_Space()
2344 id = space.id
2345- self.assertItemsEqual(
2346+ self.assertCountEqual(
2347 Space.objects.filter_by_specifiers("space-%s" % id), [space]
2348 )
2349
2350@@ -101,7 +101,7 @@ class TestSpaceManager(MAASServerTestCase):
2351 factory.make_Space()
2352 space = factory.make_Space(name="infinite-improbability")
2353 factory.make_Space()
2354- self.assertItemsEqual(
2355+ self.assertCountEqual(
2356 Space.objects.filter_by_specifiers("infinite-improbability"),
2357 [space],
2358 )
2359@@ -110,7 +110,7 @@ class TestSpaceManager(MAASServerTestCase):
2360 factory.make_Space()
2361 space = factory.make_Space(name="infinite-improbability")
2362 factory.make_Space()
2363- self.assertItemsEqual(
2364+ self.assertCountEqual(
2365 Space.objects.filter_by_specifiers("name:infinite-improbability"),
2366 [space],
2367 )
2368@@ -120,7 +120,7 @@ class TestSpaceManager(MAASServerTestCase):
2369 space = factory.make_Space()
2370 subnet = factory.make_Subnet(space=space)
2371 factory.make_Space()
2372- self.assertItemsEqual(
2373+ self.assertCountEqual(
2374 Space.objects.filter_by_specifiers("subnet:%s" % subnet.id),
2375 [space],
2376 )
2377@@ -199,7 +199,7 @@ class SpaceTest(MAASServerTestCase):
2378 name = factory.make_name("name")
2379 space = factory.make_Space(name=name)
2380 space.delete()
2381- self.assertItemsEqual([], Space.objects.filter(name=name))
2382+ self.assertCountEqual([], Space.objects.filter(name=name))
2383
2384 def test_sets_null_if_contains_vlan(self):
2385 space = factory.make_Space()
2386diff --git a/src/maasserver/models/tests/test_sshkey.py b/src/maasserver/models/tests/test_sshkey.py
2387index 1070db0..c521991 100644
2388--- a/src/maasserver/models/tests/test_sshkey.py
2389+++ b/src/maasserver/models/tests/test_sshkey.py
2390@@ -332,7 +332,7 @@ class SSHKeyManagerTest(MAASServerTestCase):
2391 def test_get_keys_for_user_no_keys(self):
2392 user = factory.make_User()
2393 keys = SSHKey.objects.get_keys_for_user(user)
2394- self.assertItemsEqual([], keys)
2395+ self.assertCountEqual([], keys)
2396
2397 def test_get_keys_for_user_with_keys(self):
2398 user1, created_keys = factory.make_user_with_keys(
2399@@ -341,4 +341,4 @@ class SSHKeyManagerTest(MAASServerTestCase):
2400 # user2
2401 factory.make_user_with_keys(n_keys=2)
2402 keys = SSHKey.objects.get_keys_for_user(user1)
2403- self.assertItemsEqual([key.key for key in created_keys], keys)
2404+ self.assertCountEqual([key.key for key in created_keys], keys)
2405diff --git a/src/maasserver/models/tests/test_sslkey.py b/src/maasserver/models/tests/test_sslkey.py
2406index 9a42c93..3cfdb93 100644
2407--- a/src/maasserver/models/tests/test_sslkey.py
2408+++ b/src/maasserver/models/tests/test_sslkey.py
2409@@ -139,7 +139,7 @@ class SSLKeyManagerTest(MAASServerTestCase):
2410 def test_get_keys_for_user_no_keys(self):
2411 user = factory.make_User()
2412 keys = SSLKey.objects.get_keys_for_user(user)
2413- self.assertItemsEqual([], keys)
2414+ self.assertCountEqual([], keys)
2415
2416 def test_get_keys_for_user_with_keys(self):
2417 user1, created_keys = factory.make_user_with_ssl_keys(
2418@@ -148,4 +148,4 @@ class SSLKeyManagerTest(MAASServerTestCase):
2419 # user2
2420 factory.make_user_with_ssl_keys(n_keys=2)
2421 keys = SSLKey.objects.get_keys_for_user(user1)
2422- self.assertItemsEqual([key.key for key in created_keys], keys)
2423+ self.assertCountEqual([key.key for key in created_keys], keys)
2424diff --git a/src/maasserver/models/tests/test_staticipaddress.py b/src/maasserver/models/tests/test_staticipaddress.py
2425index 073708a..391340a 100644
2426--- a/src/maasserver/models/tests/test_staticipaddress.py
2427+++ b/src/maasserver/models/tests/test_staticipaddress.py
2428@@ -72,7 +72,7 @@ class TestStaticIPAddressManager(MAASServerTestCase):
2429 ip_v6 = factory.make_StaticIPAddress(
2430 alloc_type=IPADDRESS_TYPE.STICKY, ip=ip_v6, subnet=subnet_v6
2431 )
2432- self.assertItemsEqual(
2433+ self.assertCountEqual(
2434 [ip_v4],
2435 StaticIPAddress.objects.filter_by_ip_family(IPADDRESS_FAMILY.IPv4),
2436 )
2437@@ -90,7 +90,7 @@ class TestStaticIPAddressManager(MAASServerTestCase):
2438 ip_v6 = factory.make_StaticIPAddress(
2439 alloc_type=IPADDRESS_TYPE.STICKY, ip=ip_v6, subnet=subnet_v6
2440 )
2441- self.assertItemsEqual(
2442+ self.assertCountEqual(
2443 [ip_v6],
2444 StaticIPAddress.objects.filter_by_ip_family(IPADDRESS_FAMILY.IPv6),
2445 )
2446@@ -108,7 +108,7 @@ class TestStaticIPAddressManager(MAASServerTestCase):
2447 ip_v6 = factory.make_StaticIPAddress(
2448 alloc_type=IPADDRESS_TYPE.STICKY, ip=ip_v6, subnet=subnet_v6
2449 )
2450- self.assertItemsEqual(
2451+ self.assertCountEqual(
2452 [ip_v4],
2453 StaticIPAddress.objects.filter_by_subnet_cidr_family(
2454 IPADDRESS_FAMILY.IPv4
2455@@ -128,7 +128,7 @@ class TestStaticIPAddressManager(MAASServerTestCase):
2456 ip_v6 = factory.make_StaticIPAddress(
2457 alloc_type=IPADDRESS_TYPE.STICKY, ip=ip_v6, subnet=subnet_v6
2458 )
2459- self.assertItemsEqual(
2460+ self.assertCountEqual(
2461 [ip_v6],
2462 StaticIPAddress.objects.filter_by_subnet_cidr_family(
2463 IPADDRESS_FAMILY.IPv6
2464diff --git a/src/maasserver/models/tests/test_subnet.py b/src/maasserver/models/tests/test_subnet.py
2465index 547f7c5..a6049bf 100644
2466--- a/src/maasserver/models/tests/test_subnet.py
2467+++ b/src/maasserver/models/tests/test_subnet.py
2468@@ -134,14 +134,14 @@ class TestSubnetQueriesMixin(MAASServerTestCase):
2469 def test_filter_by_specifiers_takes_single_item(self):
2470 subnet1 = factory.make_Subnet(name="subnet1")
2471 factory.make_Subnet(name="subnet2")
2472- self.assertItemsEqual(
2473+ self.assertCountEqual(
2474 Subnet.objects.filter_by_specifiers("subnet1"), [subnet1]
2475 )
2476
2477 def test_filter_by_specifiers_takes_multiple_items(self):
2478 subnet1 = factory.make_Subnet(name="subnet1")
2479 subnet2 = factory.make_Subnet(name="subnet2")
2480- self.assertItemsEqual(
2481+ self.assertCountEqual(
2482 Subnet.objects.filter_by_specifiers(["subnet1", "subnet2"]),
2483 [subnet1, subnet2],
2484 )
2485@@ -149,7 +149,7 @@ class TestSubnetQueriesMixin(MAASServerTestCase):
2486 def test_filter_by_specifiers_takes_multiple_cidr_or_name(self):
2487 subnet1 = factory.make_Subnet(name="subnet1", cidr="8.8.8.0/24")
2488 subnet2 = factory.make_Subnet(name="subnet2")
2489- self.assertItemsEqual(
2490+ self.assertCountEqual(
2491 Subnet.objects.filter_by_specifiers(["8.8.8.8/24", "subnet2"]),
2492 [subnet1, subnet2],
2493 )
2494@@ -157,7 +157,7 @@ class TestSubnetQueriesMixin(MAASServerTestCase):
2495 def test_filter_by_specifiers_empty_filter_matches_all(self):
2496 subnet1 = factory.make_Subnet(name="subnet1", cidr="8.8.8.0/24")
2497 subnet2 = factory.make_Subnet(name="subnet2")
2498- self.assertItemsEqual(
2499+ self.assertCountEqual(
2500 Subnet.objects.filter_by_specifiers([]), [subnet1, subnet2]
2501 )
2502
2503@@ -165,7 +165,7 @@ class TestSubnetQueriesMixin(MAASServerTestCase):
2504 subnet1 = factory.make_Subnet(name="subnet1", cidr="8.8.8.0/24")
2505 subnet2 = factory.make_Subnet(name="subnet2")
2506 factory.make_Subnet(name="subnet3")
2507- self.assertItemsEqual(
2508+ self.assertCountEqual(
2509 Subnet.objects.filter_by_specifiers(
2510 ["name:subnet1", "name:subnet2"]
2511 ),
2512@@ -178,7 +178,7 @@ class TestSubnetQueriesMixin(MAASServerTestCase):
2513 )
2514 subnet2 = factory.make_Subnet(name="subnet2", space=RANDOM)
2515 factory.make_Subnet(name="subnet3", space=RANDOM_OR_NONE)
2516- self.assertItemsEqual(
2517+ self.assertCountEqual(
2518 Subnet.objects.filter_by_specifiers(
2519 [
2520 "space:%s" % subnet1.space.name,
2521@@ -193,7 +193,7 @@ class TestSubnetQueriesMixin(MAASServerTestCase):
2522 subnet2 = factory.make_Subnet(name="subnet2", vid=2)
2523 subnet3 = factory.make_Subnet(name="subnet3", vid=3)
2524 factory.make_Subnet(name="subnet4", vid=4)
2525- self.assertItemsEqual(
2526+ self.assertCountEqual(
2527 Subnet.objects.filter_by_specifiers(
2528 ["vlan:vid:0b1", "vlan:vid:0x2", "vlan:vid:3"]
2529 ),
2530@@ -209,7 +209,7 @@ class TestSubnetQueriesMixin(MAASServerTestCase):
2531 subnet2 = factory.make_Subnet(name="subnet2", vid=2)
2532 subnet3 = factory.make_Subnet(name="subnet3", vid=3)
2533 factory.make_Subnet(name="subnet4", vid=4)
2534- self.assertItemsEqual(
2535+ self.assertCountEqual(
2536 Subnet.objects.filter_by_specifiers(
2537 ["vid:UNTAGGED", "vid:0x2", "vid:3"]
2538 ),
2539@@ -229,7 +229,7 @@ class TestSubnetQueriesMixin(MAASServerTestCase):
2540 def test_filter_by_specifiers_works_with_chained_filter(self):
2541 factory.make_Subnet(name="subnet1", cidr="8.8.8.0/24")
2542 subnet2 = factory.make_Subnet(name="subnet2")
2543- self.assertItemsEqual(
2544+ self.assertCountEqual(
2545 Subnet.objects.exclude(name="subnet1").filter_by_specifiers(
2546 ["8.8.8.8/24", "subnet2"]
2547 ),
2548@@ -239,13 +239,13 @@ class TestSubnetQueriesMixin(MAASServerTestCase):
2549 def test_filter_by_specifiers_ip_filter_matches_specific_ip(self):
2550 subnet1 = factory.make_Subnet(name="subnet1", cidr="8.8.8.0/24")
2551 subnet2 = factory.make_Subnet(name="subnet2", cidr="7.7.7.0/24")
2552- self.assertItemsEqual(
2553+ self.assertCountEqual(
2554 Subnet.objects.filter_by_specifiers("ip:8.8.8.8"), [subnet1]
2555 )
2556- self.assertItemsEqual(
2557+ self.assertCountEqual(
2558 Subnet.objects.filter_by_specifiers("ip:7.7.7.7"), [subnet2]
2559 )
2560- self.assertItemsEqual(
2561+ self.assertCountEqual(
2562 Subnet.objects.filter_by_specifiers("ip:1.1.1.1"), []
2563 )
2564
2565@@ -260,10 +260,10 @@ class TestSubnetQueriesMixin(MAASServerTestCase):
2566 def test_filter_by_specifiers_ip_filter_matches_specific_cidr(self):
2567 subnet1 = factory.make_Subnet(name="subnet1", cidr="8.8.8.0/24")
2568 subnet2 = factory.make_Subnet(name="subnet2", cidr="2001:db8::/64")
2569- self.assertItemsEqual(
2570+ self.assertCountEqual(
2571 Subnet.objects.filter_by_specifiers("cidr:8.8.8.0/24"), [subnet1]
2572 )
2573- self.assertItemsEqual(
2574+ self.assertCountEqual(
2575 Subnet.objects.filter_by_specifiers("cidr:2001:db8::/64"),
2576 [subnet2],
2577 )
2578@@ -280,7 +280,7 @@ class TestSubnetQueriesMixin(MAASServerTestCase):
2579 subnet1 = factory.make_Subnet(name="subnet1", cidr="8.8.8.0/24")
2580 factory.make_Subnet(name="subnet2", cidr="7.7.7.0/24")
2581 subnet3 = factory.make_Subnet(name="subnet3", cidr="6.6.6.0/24")
2582- self.assertItemsEqual(
2583+ self.assertCountEqual(
2584 Subnet.objects.filter_by_specifiers(
2585 ["ip:8.8.8.8", "name:subnet3"]
2586 ),
2587@@ -290,13 +290,13 @@ class TestSubnetQueriesMixin(MAASServerTestCase):
2588 def test_filter_by_specifiers_ip_filter_matches_specific_ipv6(self):
2589 subnet1 = factory.make_Subnet(name="subnet1", cidr="2001:db8::/64")
2590 subnet2 = factory.make_Subnet(name="subnet2", cidr="2001:db8:1::/64")
2591- self.assertItemsEqual(
2592+ self.assertCountEqual(
2593 Subnet.objects.filter_by_specifiers("ip:2001:db8::5"), [subnet1]
2594 )
2595- self.assertItemsEqual(
2596+ self.assertCountEqual(
2597 Subnet.objects.filter_by_specifiers("ip:2001:db8:1::5"), [subnet2]
2598 )
2599- self.assertItemsEqual(
2600+ self.assertCountEqual(
2601 Subnet.objects.filter_by_specifiers("ip:1.1.1.1"), []
2602 )
2603
2604@@ -306,11 +306,11 @@ class TestSubnetQueriesMixin(MAASServerTestCase):
2605 vlan2 = factory.make_VLAN(space=None)
2606 subnet1 = factory.make_Subnet(vlan=vlan1, space=None)
2607 subnet2 = factory.make_Subnet(vlan=vlan2, space=None)
2608- self.assertItemsEqual(
2609+ self.assertCountEqual(
2610 Subnet.objects.filter_by_specifiers("space:%s" % space1.name),
2611 [subnet1],
2612 )
2613- self.assertItemsEqual(
2614+ self.assertCountEqual(
2615 Subnet.objects.filter_by_specifiers("space:%s" % Space.UNDEFINED),
2616 [subnet2],
2617 )
2618@@ -322,15 +322,15 @@ class TestSubnetQueriesMixin(MAASServerTestCase):
2619 iface2 = node2.get_boot_interface()
2620 subnet1 = iface1.ip_addresses.first().subnet
2621 subnet2 = iface2.ip_addresses.first().subnet
2622- self.assertItemsEqual(
2623+ self.assertCountEqual(
2624 Subnet.objects.filter_by_specifiers("interface:id:%s" % iface1.id),
2625 [subnet1],
2626 )
2627- self.assertItemsEqual(
2628+ self.assertCountEqual(
2629 Subnet.objects.filter_by_specifiers("interface:id:%s" % iface2.id),
2630 [subnet2],
2631 )
2632- self.assertItemsEqual(
2633+ self.assertCountEqual(
2634 Subnet.objects.filter_by_specifiers(
2635 ["interface:id:%s" % iface1.id, "interface:id:%s" % iface2.id]
2636 ),
2637@@ -343,13 +343,13 @@ class TestSubnetQueriesMixin(MAASServerTestCase):
2638 iface1 = node1.get_boot_interface()
2639 iface2 = node2.get_boot_interface()
2640 subnet1 = iface1.ip_addresses.first().subnet
2641- self.assertItemsEqual(
2642+ self.assertCountEqual(
2643 Subnet.objects.filter_by_specifiers(
2644 ["interface:id:%s" % iface1.id, "!interface:id:%s" % iface2.id]
2645 ),
2646 [subnet1],
2647 )
2648- self.assertItemsEqual(
2649+ self.assertCountEqual(
2650 Subnet.objects.filter_by_specifiers(
2651 [
2652 "interface:id:%s" % iface1.id,
2653@@ -365,13 +365,13 @@ class TestSubnetQueriesMixin(MAASServerTestCase):
2654 iface1 = node1.get_boot_interface()
2655 iface2 = node2.get_boot_interface()
2656 subnet2 = iface2.ip_addresses.first().subnet
2657- self.assertItemsEqual(
2658+ self.assertCountEqual(
2659 Subnet.objects.filter_by_specifiers(
2660 ["!interface:id:%s" % iface1.id, "interface:id:%s" % iface2.id]
2661 ),
2662 [subnet2],
2663 )
2664- self.assertItemsEqual(
2665+ self.assertCountEqual(
2666 Subnet.objects.filter_by_specifiers(
2667 [
2668 "not_interface:id:%s" % iface1.id,
2669@@ -387,7 +387,7 @@ class TestSubnetQueriesMixin(MAASServerTestCase):
2670 iface1 = node1.get_boot_interface()
2671 iface2 = node2.get_boot_interface()
2672 # Try to filter by two mutually exclusive conditions.
2673- self.assertItemsEqual(
2674+ self.assertCountEqual(
2675 Subnet.objects.filter_by_specifiers(
2676 ["interface:id:%s" % iface1.id, "&interface:id:%s" % iface2.id]
2677 ),
2678@@ -403,19 +403,19 @@ class TestSubnetQueriesMixin(MAASServerTestCase):
2679 iface2 = node2.get_boot_interface()
2680 subnet1 = iface1.ip_addresses.first().subnet
2681 subnet2 = iface2.ip_addresses.first().subnet
2682- self.assertItemsEqual(
2683+ self.assertCountEqual(
2684 Subnet.objects.filter_by_specifiers(
2685 "interface:subnet:id:%s" % subnet1.id
2686 ),
2687 [subnet1],
2688 )
2689- self.assertItemsEqual(
2690+ self.assertCountEqual(
2691 Subnet.objects.filter_by_specifiers(
2692 "interface:subnet:id:%s" % subnet2.id
2693 ),
2694 [subnet2],
2695 )
2696- self.assertItemsEqual(
2697+ self.assertCountEqual(
2698 Subnet.objects.filter_by_specifiers(
2699 [
2700 "interface:subnet:id:%s" % subnet1.id,
2701@@ -424,19 +424,19 @@ class TestSubnetQueriesMixin(MAASServerTestCase):
2702 ),
2703 [subnet1, subnet2],
2704 )
2705- self.assertItemsEqual(
2706+ self.assertCountEqual(
2707 Subnet.objects.filter_by_specifiers(
2708 "interface:subnet:interface:subnet:id:%s" % subnet1.id
2709 ),
2710 [subnet1],
2711 )
2712- self.assertItemsEqual(
2713+ self.assertCountEqual(
2714 Subnet.objects.filter_by_specifiers(
2715 "interface:subnet:interface:subnet:id:%s" % subnet2.id
2716 ),
2717 [subnet2],
2718 )
2719- self.assertItemsEqual(
2720+ self.assertCountEqual(
2721 Subnet.objects.filter_by_specifiers(
2722 [
2723 "interface:subnet:interface:subnet:id:%s" % subnet1.id,
2724diff --git a/src/maasserver/models/tests/test_tag.py b/src/maasserver/models/tests/test_tag.py
2725index fdf7b58..11675ba 100644
2726--- a/src/maasserver/models/tests/test_tag.py
2727+++ b/src/maasserver/models/tests/test_tag.py
2728@@ -141,16 +141,13 @@ class TestTagPopulateNodesLater(MAASServerTestCase):
2729 nodes = [factory.make_Node() for _ in range(3)]
2730 tag.node_set.add(*nodes)
2731 tag._populate_nodes_later()
2732- self.assertItemsEqual(nodes, tag.node_set.all())
2733- self.assertThat(
2734- post_commit_do,
2735- MockCalledOnceWith(
2736- reactor.callLater,
2737- 0,
2738- deferToDatabase,
2739- populate_tags.populate_tags,
2740- tag,
2741- ),
2742+ self.assertCountEqual(nodes, tag.node_set.all())
2743+ post_commit_do.assert_called_once_with(
2744+ reactor.callLater,
2745+ 0,
2746+ deferToDatabase,
2747+ populate_tags.populate_tags,
2748+ tag,
2749 )
2750
2751 def test_later_is_the_default(self):
2752@@ -195,4 +192,4 @@ class TestTagPopulateNodesNow(MAASServerTestCase):
2753 nodes = [factory.make_Node() for _ in range(3)]
2754 tag.node_set.add(*nodes)
2755 tag._populate_nodes_now()
2756- self.assertItemsEqual([], tag.node_set.all())
2757+ self.assertCountEqual([], tag.node_set.all())
2758diff --git a/src/maasserver/models/tests/test_versionedtextfile.py b/src/maasserver/models/tests/test_versionedtextfile.py
2759index 2e208ba..a54bea3 100644
2760--- a/src/maasserver/models/tests/test_versionedtextfile.py
2761+++ b/src/maasserver/models/tests/test_versionedtextfile.py
2762@@ -96,7 +96,7 @@ class VersionedTextFileTest(MAASServerTestCase):
2763 textfile = textfile.update(factory.make_string())
2764 textfile_ids.append(textfile.id)
2765 self.assertEqual(textfile, textfile.revert(0))
2766- self.assertItemsEqual(
2767+ self.assertCountEqual(
2768 textfile_ids, [f.id for f in textfile.previous_versions()]
2769 )
2770
2771diff --git a/src/maasserver/models/tests/test_virtualblockdevice.py b/src/maasserver/models/tests/test_virtualblockdevice.py
2772index 0aba7eb..6775581 100644
2773--- a/src/maasserver/models/tests/test_virtualblockdevice.py
2774+++ b/src/maasserver/models/tests/test_virtualblockdevice.py
2775@@ -31,7 +31,7 @@ class TestVirtualBlockDeviceManager(MAASServerTestCase):
2776 filesystem_group = factory.make_FilesystemGroup(
2777 group_type=FILESYSTEM_GROUP_TYPE.LVM_VG
2778 )
2779- self.assertItemsEqual(
2780+ self.assertCountEqual(
2781 [],
2782 VirtualBlockDevice.objects.filter(
2783 filesystem_group=filesystem_group
2784@@ -214,7 +214,7 @@ class TestVirtualBlockDevice(MAASServerTestCase):
2785 logical_volume = reload_object(logical_volume)
2786 sdb = factory.make_PhysicalBlockDevice(node=node)
2787 factory.make_CacheSet(block_device=sdb, node=node)
2788- self.assertItemsEqual(
2789+ self.assertCountEqual(
2790 [fs.block_device_id for fs in volume_group.filesystems.all()],
2791 [parent.id for parent in logical_volume.get_parents()],
2792 )
2793diff --git a/src/maasserver/models/tests/test_vlan.py b/src/maasserver/models/tests/test_vlan.py
2794index 8d83c7d..4908e27 100644
2795--- a/src/maasserver/models/tests/test_vlan.py
2796+++ b/src/maasserver/models/tests/test_vlan.py
2797@@ -29,7 +29,7 @@ class TestVLANManager(MAASServerTestCase):
2798 vlan = factory.make_VLAN()
2799 factory.make_VLAN()
2800 vid = vlan.vid
2801- self.assertItemsEqual(
2802+ self.assertCountEqual(
2803 VLAN.objects.filter_by_specifiers("%s" % vid), [vlan]
2804 )
2805
2806@@ -37,7 +37,7 @@ class TestVLANManager(MAASServerTestCase):
2807 factory.make_VLAN()
2808 vlan = factory.make_VLAN(name="infinite-improbability")
2809 factory.make_VLAN()
2810- self.assertItemsEqual(
2811+ self.assertCountEqual(
2812 VLAN.objects.filter_by_specifiers("infinite-improbability"), [vlan]
2813 )
2814
2815@@ -45,7 +45,7 @@ class TestVLANManager(MAASServerTestCase):
2816 factory.make_VLAN()
2817 vlan = factory.make_VLAN(name="infinite-improbability")
2818 factory.make_VLAN()
2819- self.assertItemsEqual(
2820+ self.assertCountEqual(
2821 VLAN.objects.filter_by_specifiers("name:infinite-improbability"),
2822 [vlan],
2823 )
2824@@ -55,7 +55,7 @@ class TestVLANManager(MAASServerTestCase):
2825 vlan = factory.make_VLAN()
2826 vid = vlan.vid
2827 factory.make_VLAN()
2828- self.assertItemsEqual(
2829+ self.assertCountEqual(
2830 VLAN.objects.filter_by_specifiers("vid:%d" % vid), [vlan]
2831 )
2832
2833@@ -64,7 +64,7 @@ class TestVLANManager(MAASServerTestCase):
2834 space = factory.make_Space()
2835 vlan = factory.make_VLAN(space=space)
2836 factory.make_VLAN()
2837- self.assertItemsEqual(
2838+ self.assertCountEqual(
2839 VLAN.objects.filter_by_specifiers("space:%s" % space.name), [vlan]
2840 )
2841
2842@@ -73,7 +73,7 @@ class TestVLANManager(MAASServerTestCase):
2843 space = factory.make_Space()
2844 vlan = factory.make_VLAN(space=space)
2845 factory.make_VLAN()
2846- self.assertItemsEqual(
2847+ self.assertCountEqual(
2848 VLAN.objects.filter_by_specifiers("space:%s" % space.id), [vlan]
2849 )
2850
2851@@ -82,7 +82,7 @@ class TestVLANManager(MAASServerTestCase):
2852 vlan = factory.make_VLAN()
2853 subnet = factory.make_Subnet(vlan=vlan)
2854 factory.make_VLAN()
2855- self.assertItemsEqual(
2856+ self.assertCountEqual(
2857 VLAN.objects.filter_by_specifiers("subnet:%s" % subnet.id), [vlan]
2858 )
2859
2860@@ -92,7 +92,7 @@ class TestVLANManager(MAASServerTestCase):
2861 factory.make_VLAN()
2862 vlan = factory.make_VLAN(fabric=fabric)
2863 factory.make_VLAN()
2864- self.assertItemsEqual(
2865+ self.assertCountEqual(
2866 VLAN.objects.filter_by_specifiers(
2867 "fabric:%s,vid:%d" % (fabric.name, vlan.vid)
2868 ),
2869@@ -160,7 +160,7 @@ class TestVLAN(MAASServerTestCase):
2870 INTERFACE_TYPE.VLAN, vlan=vlan, parents=[parent]
2871 )
2872 vlan.delete()
2873- self.assertItemsEqual(
2874+ self.assertCountEqual(
2875 [], VLANInterface.objects.filter(id=interface.id)
2876 )
2877
2878@@ -175,7 +175,7 @@ class TestVLAN(MAASServerTestCase):
2879 reconnected_interfaces = PhysicalInterface.objects.filter(
2880 id=interface.id
2881 )
2882- self.assertItemsEqual([interface], reconnected_interfaces)
2883+ self.assertCountEqual([interface], reconnected_interfaces)
2884 reconnected_interface = reconnected_interfaces[0]
2885 self.assertEqual(reconnected_interface.vlan, fabric.get_default_vlan())
2886
2887@@ -222,7 +222,7 @@ class TestVLAN(MAASServerTestCase):
2888 def test_connected_rack_controllers(self):
2889 vlan = factory.make_VLAN()
2890 racks = [factory.make_RackController(vlan=vlan) for _ in range(3)]
2891- self.assertItemsEqual(racks, vlan.connected_rack_controllers())
2892+ self.assertCountEqual(racks, vlan.connected_rack_controllers())
2893
2894
2895 class TestVLANVidValidation(MAASServerTestCase):

Subscribers

People subscribed via source and target branches