def test_get_ports_filter_with_ip_and_device(self): with self._stubs(self.network, self.subnet, self.ports_info4) as ( net, sub, ports): network = dict(name="xx", tenant_id="fake", network_plugin="BASE") xx_network = {"network": network} xx_net = network_api.create_network(self.context, xx_network) subnet = dict(id=2, ip_version=4, next_auto_assign_ip=2, cidr=self.cidr, first_ip=self.ip_network.first, last_ip=self.ip_network.last, ip_policy=None, tenant_id="fake") xx_subnet = {"subnet": subnet} xx_subnet['subnet']['network_id'] = xx_net['id'] subnet_api.create_subnet(self.context, xx_subnet) port_info = {'port': dict(device_id='a')} port_info['port']['network_id'] = xx_net['id'] port_api.create_port(self.context, port_info) port_ids1 = [ports[0]['id'], ports[1]['id']] shared_ip1 = {'ip_address': dict(port_ids=port_ids1, network_id=net['id'], version=4)} ip1 = ip_api.create_ip_address(self.context, shared_ip1) filters = dict(device_id='a') ports = ip_api.get_ports_for_ip_address(self.context, ip1['id'], filters=filters) self.assertEqual(1, len(ports)) filters = dict(device_id='a') ports = port_api.get_ports(self.context, filters=filters) self.assertEqual(2, len(ports))
def test_ports_pagination(self): cidr = "192.168.1.0/24" ip_network = netaddr.IPNetwork(cidr) network = dict(id="1", name="public", tenant_id="make", network_plugin="BASE", ipam_strategy="ANY") network = {"network": network} subnet = dict(id="1", ip_version=4, next_auto_assign_ip=2, cidr=cidr, first_ip=ip_network.first, last_ip=ip_network.last, ip_policy=None, tenant_id="fake") subnet_info = {"subnet": subnet} def _make_body(): fix_ipv4 = dict(subnet_id=sub_ports[0]['id']) port_info = { "port": dict(fixed_ips=[fix_ipv4], network_id=net['id']) } return port_info ports_per_page = 1 with self._stubs(network, subnet_info) as (net, sub_ports): port1 = port_api.create_port(self.context, _make_body()) port2 = port_api.create_port(self.context, _make_body()) res_ports = port_api.get_ports(self.context, ports_per_page, ['id'], None) self.assertEqual(len(res_ports), ports_per_page) res_ports = port_api.get_ports(self.context) self.assertNotEqual(len(res_ports), ports_per_page) # Note (Perkins): Testing for a default sort on created_at, # but created_at is not available, so check that mac addresses, # which are created sequentially, are ordered correctly. res_ports = port_api.get_ports(self.context, 2, ['mac_address'], None) self.assertTrue( res_ports[0]['mac_address'] < res_ports[1]['mac_address']) self.assertTrue(port1['id'] == res_ports[0]['id']) self.assertTrue(port2['id'] == res_ports[1]['id'])
def get_ports(self, context, limit=None, page_reverse=False, sorts=['id'], marker=None, filters=None, fields=None): return ports.get_ports(context, limit, sorts, marker, page_reverse, filters, fields)
def test_ports_pagination(self): cidr = "192.168.1.0/24" ip_network = netaddr.IPNetwork(cidr) network = dict(id="1", name="public", tenant_id="make", network_plugin="BASE", ipam_strategy="ANY") network = {"network": network} subnet = dict(id="1", ip_version=4, next_auto_assign_ip=2, cidr=cidr, first_ip=ip_network.first, last_ip=ip_network.last, ip_policy=None, tenant_id="fake") subnet_info = {"subnet": subnet} def _make_body(): fix_ipv4 = dict(subnet_id=sub_ports[0]['id']) port_info = {"port": dict(fixed_ips=[fix_ipv4], network_id=net['id'])} return port_info ports_per_page = 1 with self._stubs(network, subnet_info) as ( net, sub_ports): port1 = port_api.create_port(self.context, _make_body()) port2 = port_api.create_port(self.context, _make_body()) res_ports = port_api.get_ports(self.context, ports_per_page, ['id'], None) self.assertEqual(len(res_ports), ports_per_page) res_ports = port_api.get_ports(self.context) self.assertNotEqual(len(res_ports), ports_per_page) # Note (Perkins): Testing for a default sort on created_at, # but created_at is not available, so check that mac addresses, # which are created sequentially, are ordered correctly. res_ports = port_api.get_ports(self.context, 2, ['mac_address'], None) self.assertTrue(res_ports[0]['mac_address'] < res_ports[1]['mac_address']) self.assertTrue(port1['id'] == res_ports[0]['id']) self.assertTrue(port2['id'] == res_ports[1]['id'])
def get_ports(self, context, limit=None, page_reverse=False, sorts=None, marker=None, filters=None, fields=None): return ports.get_ports(context, limit, sorts, marker, page_reverse, filters, fields)
def get_ports(self, context, filters=None, fields=None): return ports.get_ports(context, filters, fields)