|
|
@@ -1420,6 +1420,19 @@ class ServiceTestCase(TestCase, ChangeLoggedFilterSetTests):
|
|
|
)
|
|
|
Device.objects.bulk_create(devices)
|
|
|
|
|
|
+ interface = Interface.objects.create(
|
|
|
+ device=devices[0],
|
|
|
+ name='eth0',
|
|
|
+ type=InterfaceTypeChoices.TYPE_VIRTUAL
|
|
|
+ )
|
|
|
+ interface_ct = ContentType.objects.get_for_model(Interface).pk
|
|
|
+ ip_addresses = (
|
|
|
+ IPAddress(address='192.0.2.1/24', assigned_object_type_id=interface_ct, assigned_object_id=interface.pk),
|
|
|
+ IPAddress(address='192.0.2.2/24', assigned_object_type_id=interface_ct, assigned_object_id=interface.pk),
|
|
|
+ IPAddress(address='192.0.2.3/24', assigned_object_type_id=interface_ct, assigned_object_id=interface.pk),
|
|
|
+ )
|
|
|
+ IPAddress.objects.bulk_create(ip_addresses)
|
|
|
+
|
|
|
clustertype = ClusterType.objects.create(name='Cluster Type 1', slug='cluster-type-1')
|
|
|
cluster = Cluster.objects.create(type=clustertype, name='Cluster 1')
|
|
|
|
|
|
@@ -1439,6 +1452,9 @@ class ServiceTestCase(TestCase, ChangeLoggedFilterSetTests):
|
|
|
Service(virtual_machine=virtual_machines[2], name='Service 6', protocol=ServiceProtocolChoices.PROTOCOL_UDP, ports=[2003]),
|
|
|
)
|
|
|
Service.objects.bulk_create(services)
|
|
|
+ services[0].ipaddresses.add(ip_addresses[0])
|
|
|
+ services[1].ipaddresses.add(ip_addresses[1])
|
|
|
+ services[2].ipaddresses.add(ip_addresses[2])
|
|
|
|
|
|
def test_name(self):
|
|
|
params = {'name': ['Service 1', 'Service 2']}
|
|
|
@@ -1470,6 +1486,13 @@ class ServiceTestCase(TestCase, ChangeLoggedFilterSetTests):
|
|
|
params = {'virtual_machine': [vms[0].name, vms[1].name]}
|
|
|
self.assertEqual(self.filterset(params, self.queryset).qs.count(), 2)
|
|
|
|
|
|
+ def test_ipaddress(self):
|
|
|
+ ips = IPAddress.objects.all()[:2]
|
|
|
+ params = {'ipaddress_id': [ips[0].pk, ips[1].pk]}
|
|
|
+ self.assertEqual(self.filterset(params, self.queryset).qs.count(), 2)
|
|
|
+ params = {'ipaddress': [str(ips[0].address), str(ips[1].address)]}
|
|
|
+ self.assertEqual(self.filterset(params, self.queryset).qs.count(), 2)
|
|
|
+
|
|
|
|
|
|
class L2VPNTestCase(TestCase, ChangeLoggedFilterSetTests):
|
|
|
queryset = L2VPN.objects.all()
|