~ubuntu-branches/ubuntu/saucy/nova/saucy-proposed

« back to all changes in this revision

Viewing changes to nova/tests/network/test_manager.py

  • Committer: Package Import Robot
  • Author(s): Chuck Short
  • Date: 2012-05-24 13:12:53 UTC
  • mfrom: (1.1.55)
  • Revision ID: package-import@ubuntu.com-20120524131253-ommql08fg1en06ut
Tags: 2012.2~f1-0ubuntu1
* New upstream release.
* Prepare for quantal:
  - Dropped debian/patches/upstream/0006-Use-project_id-in-ec2.cloud._format_image.patch
  - Dropped debian/patches/upstream/0005-Populate-image-properties-with-project_id-again.patch
  - Dropped debian/patches/upstream/0004-Fixed-bug-962840-added-a-test-case.patch
  - Dropped debian/patches/upstream/0003-Allow-unprivileged-RADOS-users-to-access-rbd-volumes.patch
  - Dropped debian/patches/upstream/0002-Stop-libvirt-test-from-deleting-instances-dir.patch
  - Dropped debian/patches/upstream/0001-fix-bug-where-nova-ignores-glance-host-in-imageref.patch 
  - Dropped debian/patches/0001-fix-useexisting-deprecation-warnings.patch
* debian/control: Add python-keystone as a dependency. (LP: #907197)
* debian/patches/kombu_tests_timeout.patch: Refreshed.
* debian/nova.conf, debian/nova-common.postinst: Convert to new ini
  file configuration
* debian/patches/nova-manage_flagfile_location.patch: Refreshed

Show diffs side-by-side

added added

removed removed

Lines of Context:
25
25
from nova import exception
26
26
from nova import flags
27
27
from nova import log as logging
 
28
from nova.network import linux_net
 
29
from nova.network import manager as network_manager
 
30
from nova.openstack.common import importutils
28
31
import nova.policy
29
32
from nova import rpc
30
33
from nova import test
 
34
from nova.tests import fake_network
31
35
from nova import utils
32
 
from nova.network import linux_net
33
 
from nova.network import manager as network_manager
34
 
from nova.tests import fake_network
35
36
 
36
37
 
37
38
LOG = logging.getLogger(__name__)
132
133
        self.tempdir = tempfile.mkdtemp()
133
134
        self.flags(logdir=self.tempdir)
134
135
        self.network = network_manager.FlatManager(host=HOST)
135
 
        temp = utils.import_object('nova.network.minidns.MiniDNS')
 
136
        temp = importutils.import_object('nova.network.minidns.MiniDNS')
136
137
        self.network.instance_dns_manager = temp
137
138
        self.network.instance_dns_domain = ''
138
139
        self.network.db = db
165
166
            self.assertDictMatch(nw, check)
166
167
 
167
168
            check = {'broadcast': '192.168.%d.255' % nid,
168
 
                     'dhcp_server': '192.168.%d.1' % nid,
 
169
                     'dhcp_server': None,
169
170
                     'dns': ['192.168.%d.3' % nid, '192.168.%d.4' % nid],
170
171
                     'gateway': '192.168.%d.1' % nid,
171
172
                     'gateway_v6': 'fe80::def',
551
552
                                      is_admin=False)
552
553
 
553
554
        def fake1(*args, **kwargs):
554
 
            return {'address': '10.0.0.1'}
 
555
            return {'address': '10.0.0.1', 'project_id': ctxt.project_id}
555
556
 
556
557
        def fake2(*args, **kwargs):
557
558
            return 25
583
584
            return {'address': '10.0.0.1', 'fixed_ip_id': 1}
584
585
 
585
586
        def fake3(*args, **kwargs):
586
 
            return {'address': '10.0.0.1', 'fixed_ip_id': None}
 
587
            return {'address': '10.0.0.1', 'fixed_ip_id': None,
 
588
                    'project_id': ctxt.project_id}
587
589
 
588
590
        self.stubs.Set(self.network.db, 'floating_ip_deallocate', fake1)
589
591
        self.stubs.Set(self.network, '_floating_ip_owned_by_project', fake1)
714
716
        self.stubs.Set(self.network.db, 'fixed_ip_get', fixed_ip_get)
715
717
 
716
718
        self.mox.StubOutWithMock(self.network.l3driver, 'add_floating_ip')
 
719
        self.flags(public_interface=False)
717
720
        self.network.l3driver.add_floating_ip('fakefloat',
718
721
                                              'fakefixed',
719
722
                                              'fakeiface')
720
723
        self.mox.ReplayAll()
721
724
        self.network.init_host_floating_ips()
 
725
        self.mox.UnsetStubs()
 
726
        self.mox.VerifyAll()
 
727
 
 
728
        self.mox.StubOutWithMock(self.network.l3driver, 'add_floating_ip')
 
729
        self.flags(public_interface='fooiface')
 
730
        self.network.l3driver.add_floating_ip('fakefloat',
 
731
                                              'fakefixed',
 
732
                                              'fooiface')
 
733
        self.mox.ReplayAll()
 
734
        self.network.init_host_floating_ips()
 
735
        self.mox.UnsetStubs()
 
736
        self.mox.VerifyAll()
722
737
 
723
738
    def test_disassociate_floating_ip(self):
724
739
        ctxt = context.RequestContext('testuser', 'testproject',
739
754
            return {'address': '10.0.0.1',
740
755
                    'pool': 'nova',
741
756
                    'interface': 'eth0',
742
 
                    'fixed_ip_id': 1}
 
757
                    'fixed_ip_id': 1,
 
758
                    'project_id': ctxt.project_id}
743
759
 
744
760
        # fixed ip with remote host
745
761
        def fake4(*args, **kwargs):
1266
1282
    def test_get_network(self):
1267
1283
        manager = fake_network.FakeNetworkManager()
1268
1284
        fake_context = context.RequestContext('user', 'project')
1269
 
        self.mox.StubOutWithMock(manager.db, 'network_get_all_by_uuids')
1270
 
        manager.db.network_get_all_by_uuids(
1271
 
                mox.IgnoreArg(),
1272
 
                mox.IgnoreArg()).AndReturn(networks)
 
1285
        self.mox.StubOutWithMock(manager.db, 'network_get_by_uuid')
 
1286
        manager.db.network_get_by_uuid(mox.IgnoreArg(),
 
1287
                                       mox.IgnoreArg()).AndReturn(networks[0])
1273
1288
        self.mox.ReplayAll()
1274
1289
        uuid = 'aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa'
1275
1290
        network = manager.get_network(fake_context, uuid)
1278
1293
    def test_get_network_not_found(self):
1279
1294
        manager = fake_network.FakeNetworkManager()
1280
1295
        fake_context = context.RequestContext('user', 'project')
1281
 
        self.mox.StubOutWithMock(manager.db, 'network_get_all_by_uuids')
1282
 
        manager.db.network_get_all_by_uuids(mox.IgnoreArg(),
1283
 
                                            mox.IgnoreArg()).AndReturn([])
 
1296
        self.mox.StubOutWithMock(manager.db, 'network_get_by_uuid')
 
1297
        manager.db.network_get_by_uuid(
 
1298
                mox.IgnoreArg(),
 
1299
                mox.IgnoreArg()).AndRaise(exception.NetworkNotFoundForUUID)
1284
1300
        self.mox.ReplayAll()
1285
1301
        uuid = 'eeeeeeee-eeee-eeee-eeee-eeeeeeeeeeee'
1286
1302
        self.assertRaises(exception.NetworkNotFound,
1302
1318
    def test_disassociate_network(self):
1303
1319
        manager = fake_network.FakeNetworkManager()
1304
1320
        fake_context = context.RequestContext('user', 'project')
1305
 
        self.mox.StubOutWithMock(manager.db, 'network_get_all_by_uuids')
1306
 
        manager.db.network_get_all_by_uuids(
1307
 
                mox.IgnoreArg(),
1308
 
                mox.IgnoreArg()).AndReturn(networks)
 
1321
        self.mox.StubOutWithMock(manager.db, 'network_get_by_uuid')
 
1322
        manager.db.network_get_by_uuid(mox.IgnoreArg(),
 
1323
                                       mox.IgnoreArg()).AndReturn(networks[0])
1309
1324
        self.mox.ReplayAll()
1310
1325
        uuid = 'aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa'
1311
1326
        manager.disassociate_network(fake_context, uuid)
1313
1328
    def test_disassociate_network_not_found(self):
1314
1329
        manager = fake_network.FakeNetworkManager()
1315
1330
        fake_context = context.RequestContext('user', 'project')
1316
 
        self.mox.StubOutWithMock(manager.db, 'network_get_all_by_uuids')
1317
 
        manager.db.network_get_all_by_uuids(mox.IgnoreArg(),
1318
 
                                            mox.IgnoreArg()).AndReturn([])
 
1331
        self.mox.StubOutWithMock(manager.db, 'network_get_by_uuid')
 
1332
        manager.db.network_get_by_uuid(
 
1333
                mox.IgnoreArg(),
 
1334
                mox.IgnoreArg()).AndRaise(exception.NetworkNotFoundForUUID)
1319
1335
        self.mox.ReplayAll()
1320
1336
        uuid = 'eeeeeeee-eeee-eeee-eeee-eeeeeeeeeeee'
1321
1337
        self.assertRaises(exception.NetworkNotFound,
1407
1423
        self.tempdir = tempfile.mkdtemp()
1408
1424
        self.flags(logdir=self.tempdir)
1409
1425
        self.network = TestFloatingIPManager()
1410
 
        temp = utils.import_object('nova.network.minidns.MiniDNS')
 
1426
        temp = importutils.import_object('nova.network.minidns.MiniDNS')
1411
1427
        self.network.floating_dns_manager = temp
1412
1428
        self.network.db = db
1413
1429
        self.project_id = 'testproject'
1610
1626
        self.tempdir = tempfile.mkdtemp()
1611
1627
        self.flags(logdir=self.tempdir)
1612
1628
        self.network = TestFloatingIPManager()
1613
 
        temp = utils.import_object('nova.network.minidns.MiniDNS')
 
1629
        temp = importutils.import_object('nova.network.minidns.MiniDNS')
1614
1630
        self.network.instance_dns_manager = temp
1615
 
        temp = utils.import_object('nova.network.dns_driver.DNSDriver')
 
1631
        temp = importutils.import_object('nova.network.dns_driver.DNSDriver')
1616
1632
        self.network.floating_dns_manager = temp
1617
1633
        self.network.db = db
1618
1634
        self.project_id = 'testproject'
1659
1675
        import nova.auth.fakeldap
1660
1676
        sys.modules['ldap'] = nova.auth.fakeldap
1661
1677
 
1662
 
        temp = utils.import_object('nova.network.ldapdns.FakeLdapDNS')
 
1678
        temp = importutils.import_object('nova.network.ldapdns.FakeLdapDNS')
1663
1679
        self.driver = temp
1664
1680
        self.driver.create_domain(domain1)
1665
1681
        self.driver.create_domain(domain2)