def test_get_ports_multiple(self):
     neutron = mock.Mock()
     fake_ports = {
         'ports': [
             {
                 'name': 'random'
             },
             {
                 'name': 'bmc-foo_0'
             },
             {
                 'name': 'bmc-bar_0'
             },
             {
                 'name': 'baremetal-foo_0'
             },
             {
                 'name': 'baremetal-bar_0'
             },
         ]
     }
     neutron.list_ports.return_value = fake_ports
     bmc_ports, bm_ports = build_nodes_json._get_ports(
         neutron, 'bmc-foo', 'baremetal-foo')
     self.assertEqual([{'name': 'bmc-foo_0'}], bmc_ports)
     self.assertEqual([{'name': 'baremetal-foo_0'}], bm_ports)
    def test_get_ports(self):
        neutron = mock.Mock()
        fake_fixed_ips = [{'subnet_id': 'provision_id'}]
        fake_ports = {
            'ports': [
                {
                    'name': 'random',
                    'id': 'random_id',
                    'fixed_ips': fake_fixed_ips
                },
                {
                    'name': 'bmc_1',
                    'id': 'bmc_1_id',
                    'fixed_ips': fake_fixed_ips
                },
                {
                    'name': 'bmc_0',
                    'id': 'bmc_0_id',
                    'fixed_ips': fake_fixed_ips
                },
                {
                    'name': 'baremetal_1',
                    'id': 'baremetal_1_id',
                    'fixed_ips': fake_fixed_ips
                },
                {
                    'name': 'baremetal_0',
                    'id': 'baremetal_0_id',
                    'fixed_ips': fake_fixed_ips
                },
            ]
        }
        fake_subnets = {
            'subnets': [{
                'name': 'provision',
                'id': 'provision_id'
            }]
        }
        neutron.list_ports.return_value = fake_ports
        neutron.list_subnets.return_value = fake_subnets

        (bm_ports, bmc_bm_port_pairs,
         provision_net_map) = build_nodes_json._get_ports(
             neutron, 'bmc', 'baremetal')
        self.assertEqual([fake_ports['ports'][4], fake_ports['ports'][3]],
                         bm_ports)
        self.assertEqual([fake_ports['ports'][2], fake_ports['ports'][1]],
                         [bmc_port for bmc_port, bm_port in bmc_bm_port_pairs])
        self.assertEqual(
            {
                'baremetal_0_id': 'provision',
                'baremetal_1_id': 'provision'
            }, provision_net_map)
 def test_get_ports_multiple(self):
     neutron = mock.Mock()
     fake_ports = {'ports':
                       [{'name': 'random'},
                        {'name': 'bmc-foo_0'},
                        {'name': 'bmc-bar_0'},
                        {'name': 'baremetal-foo_0'},
                        {'name': 'baremetal-bar_0'},
                        ]
                       }
     neutron.list_ports.return_value = fake_ports
     bmc_ports, bm_ports = build_nodes_json._get_ports(neutron, 'bmc-foo',
                                                       'baremetal-foo')
     self.assertEqual([{'name': 'bmc-foo_0'}], bmc_ports)
     self.assertEqual([{'name': 'baremetal-foo_0'}], bm_ports)
 def test_get_ports_multiple(self):
     neutron = mock.Mock()
     fake_fixed_ips = [{'subnet_id': 'provision_id'}]
     fake_ports = {
         'ports': [
             {
                 'name': 'random',
                 'id': 'random_id',
                 'fixed_ips': fake_fixed_ips
             },
             {
                 'name': 'bmc-foo_0',
                 'id': 'bmc_foo_0_id',
                 'fixed_ips': fake_fixed_ips
             },
             {
                 'name': 'bmc-bar_0',
                 'id': 'bmc_bar_0_id',
                 'fixed_ips': fake_fixed_ips
             },
             {
                 'name': 'baremetal-foo_0',
                 'id': 'baremetal_foo_0_id',
                 'fixed_ips': fake_fixed_ips
             },
             {
                 'name': 'baremetal-bar_0',
                 'id': 'baremetal_bar_0_id',
                 'fixed_ips': fake_fixed_ips
             },
         ]
     }
     fake_subnets = {
         'subnets': [{
             'name': 'provision',
             'id': 'provision_id'
         }]
     }
     neutron.list_ports.return_value = fake_ports
     neutron.list_subnets.return_value = fake_subnets
     (bm_ports, bmc_bm_port_pairs,
      provision_net_map) = build_nodes_json._get_ports(
          neutron, '<bmc-foo', 'baremetal-foo')
     self.assertEqual([fake_ports['ports'][3]], bm_ports)
     for bmc_port, bm_port in bmc_bm_port_pairs:
         self.assertEqual([fake_ports['ports'][1]], bmc_port)
         self.assertEqual([fake_ports['ports'][3]], bm_port)