예제 #1
0
def _generate_fake_vifs(context):
    vif = vif_obj.VirtualInterface(context=context)
    vif.address = '00-00-00-00-00-00'
    vif.net_uuid = 123
    vif.uuid = uuids.vif1_uuid
    fake_vifs = [vif]
    vif = vif_obj.VirtualInterface(context=context)
    vif.address = '11-11-11-11-11-11'
    vif.net_uuid = 456
    vif.uuid = uuids.vif2_uuid
    fake_vifs.append(vif)
    return fake_vifs
def _generate_fake_vifs(context):
    vif = vif_obj.VirtualInterface(context=context)
    vif.address = '00-00-00-00-00-00'
    vif.network_id = 123
    vif.net_uuid = '22222222-2222-2222-2222-22222222222222222'
    vif.uuid = '00000000-0000-0000-0000-00000000000000000'
    fake_vifs = [vif]
    vif = vif_obj.VirtualInterface(context=context)
    vif.address = '11-11-11-11-11-11'
    vif.network_id = 456
    vif.net_uuid = '33333333-3333-3333-3333-33333333333333333'
    vif.uuid = '11111111-1111-1111-1111-11111111111111111'
    fake_vifs.append(vif)
    return fake_vifs
예제 #3
0
    def get_by_network(cls, context, network, host=None):
        ipinfo = db.network_get_associated_fixed_ips(context,
                                                     network['id'],
                                                     host=host)
        if not ipinfo:
            return []

        fips = cls(context=context, objects=[])

        for info in ipinfo:
            inst = instance_obj.Instance(context=context,
                                         uuid=info['instance_uuid'],
                                         hostname=info['instance_hostname'],
                                         created_at=info['instance_created'],
                                         updated_at=info['instance_updated'])
            vif = vif_obj.VirtualInterface(context=context,
                                           id=info['vif_id'],
                                           address=info['vif_address'])
            fip = FixedIP(context=context,
                          address=info['address'],
                          instance_uuid=info['instance_uuid'],
                          network_id=info['network_id'],
                          virtual_interface_id=info['vif_id'],
                          allocated=info['allocated'],
                          leased=info['leased'],
                          instance=inst,
                          virtual_interface=vif)
            fips.objects.append(fip)
        fips.obj_reset_changes()
        return fips
예제 #4
0
    def test_obj_make_compatible_pre_1_1(self):
        vif = vif_obj.VirtualInterface(context=self.context)
        vif.address = '00:00:00:00:00:00'
        vif.network_id = 123
        vif.instance_uuid = uuids.instance
        vif.uuid = uuids.uuid
        vif.tag = 'fake-tag'

        primitive = vif.obj_to_primitive(target_version='1.0')
        self.assertNotIn('tag', primitive)
예제 #5
0
def _generate_fake_vifs():
    global VIFS
    fake_vifs = []
    for i in range(0, len(VIFS)):
        vif = vif_obj.VirtualInterface()
        vif.uuid = VIFS[i]['uuid']
        vif.address = VIFS[i]['address']
        vif.network_id = VIFS[i]['network_id']
        fake_vifs.append(vif)
    return fake_vifs
예제 #6
0
    def test_destroy(self):
        vif = vif_obj.VirtualInterface(context=self.context)
        vif.address = '00:00:00:00:00:00'
        vif.network_id = 123
        vif.instance_uuid = uuids.instance_uuid
        vif.uuid = uuids.vif_uuid
        vif.tag = 'foo'
        vif.create()

        vif = vif_obj.VirtualInterface.get_by_id(self.context, vif.id)
        vif.destroy()
        self.assertIsNone(
            vif_obj.VirtualInterface.get_by_id(self.context, vif.id))
예제 #7
0
    def test_create(self):
        vif = vif_obj.VirtualInterface(context=self.context)
        vif.address = '00:00:00:00:00:00'
        vif.network_id = 123
        vif.instance_uuid = 'fake-uuid'
        vif.uuid = 'fake-uuid-2'

        with mock.patch.object(db, 'virtual_interface_create') as create:
            create.return_value = fake_vif
            vif.create()

        self.assertEqual(self.context, vif._context)
        vif._context = None
        self._compare(self, fake_vif, vif)
예제 #8
0
    def test_save(self):
        vif = vif_obj.VirtualInterface(context=self.context)
        vif.address = '00:00:00:00:00:00'
        vif.network_id = 123
        vif.instance_uuid = uuids.instance_uuid
        vif.uuid = uuids.vif_uuid
        vif.tag = 'foo'
        vif.create()

        with mock.patch.object(db, 'virtual_interface_update') as update:
            update.return_value = fake_vif
            vif.tag = 'bar'
            vif.save()
            update.assert_called_once_with(self.context, '00:00:00:00:00:00',
                                           {'tag': 'bar'})
예제 #9
0
    def test_create_neutron_styyyyle(self):
        vif = vif_obj.VirtualInterface(context=self.context)
        vif.address = '00:00:00:00:00:00/%s' % uuids.port
        vif.instance_uuid = uuids.instance
        vif.uuid = uuids.uuid
        vif.tag = 'fake-tag'

        with mock.patch.object(db, 'virtual_interface_create') as create:
            create.return_value = dict(fake_vif, address=vif.address)
            vif.create()

        self.assertEqual(self.context, vif._context)
        vif._context = None
        # NOTE(danms): The actual vif should now have the namespace
        # stripped out
        self._compare(self, fake_vif, vif)