~ubuntu-branches/ubuntu/wily/heat/wily-proposed

« back to all changes in this revision

Viewing changes to heat/tests/test_os_database.py

  • Committer: Package Import Robot
  • Author(s): James Page, Corey Bryant, James Page
  • Date: 2015-03-30 11:11:18 UTC
  • mfrom: (1.1.23)
  • Revision ID: package-import@ubuntu.com-20150330111118-2qpycylx6swu4yhj
Tags: 2015.1~b3-0ubuntu1
[ Corey Bryant ]
* New upstream milestone release for OpenStack kilo:
  - d/control: Align with upstream dependencies.
  - d/p/sudoers_patch.patch: Rebased.
  - d/p/fix-requirements.patch: Rebased.

[ James Page ]
* d/p/fixup-assert-regex.patch: Tweak test to use assertRegexpMatches.

Show diffs side-by-side

added added

removed removed

Lines of Context:
24
24
from heat.engine.clients.os import trove
25
25
from heat.engine import parser
26
26
from heat.engine import resource
27
 
from heat.engine.resources import os_database
 
27
from heat.engine.resources.openstack.trove import os_database
28
28
from heat.engine import rsrc_defn
29
29
from heat.engine import scheduler
30
30
from heat.tests import common
80
80
        self.resource_id = 12345
81
81
        self.status = 'ACTIVE'
82
82
 
83
 
    def get(self):
84
 
        pass
85
 
 
86
83
    def delete(self):
87
84
        pass
88
85
 
105
102
        self.fc = self.m.CreateMockAnything()
106
103
        self.nova = self.m.CreateMockAnything()
107
104
        self.m.StubOutWithMock(trove.TroveClientPlugin, '_create')
 
105
        self.stub_TroveFlavorConstraint_validate()
108
106
 
109
107
    def _setup_test_clouddbinstance(self, name, t):
110
108
        stack_name = '%s_stack' % name
149
147
    def _stubout_check_create_complete(self, fake_dbinstance):
150
148
        self.fc.instances.get(fake_dbinstance.id).AndReturn(fake_dbinstance)
151
149
 
152
 
    def _stubout_validate(self, instance, neutron=None):
 
150
    def _stubout_validate(self, instance, neutron=None,
 
151
                          mock_net_constraint=False,
 
152
                          with_port=True):
 
153
        if mock_net_constraint:
 
154
            self.stub_NetworkConstraint_validate()
 
155
 
153
156
        trove.TroveClientPlugin._create().AndReturn(self.fc)
154
157
        self.m.StubOutWithMock(self.fc, 'datastore_versions')
155
158
        self.m.StubOutWithMock(self.fc.datastore_versions, 'list')
156
159
        self.fc.datastore_versions.list(instance.properties['datastore_type']
157
160
                                        ).AndReturn([FakeVersion()])
 
161
 
158
162
        if neutron is not None:
159
163
            self.m.StubOutWithMock(instance, 'is_using_neutron')
160
164
            instance.is_using_neutron().AndReturn(bool(neutron))
 
165
            if with_port:
 
166
                self.stub_PortConstraint_validate()
161
167
        self.m.ReplayAll()
162
168
 
163
169
    def test_osdatabase_create(self):
550
556
                "network": "somenetuuid"
551
557
            }]
552
558
        instance = self._setup_test_clouddbinstance('dbinstance_test', t)
553
 
        self._stubout_validate(instance, neutron=True)
 
559
        self._stubout_validate(instance, neutron=True,
 
560
                               mock_net_constraint=True)
554
561
 
555
562
        ex = self.assertRaises(
556
563
            exception.StackValidationFailed, instance.validate)
565
572
                "fixed_ip": "1.2.3.4"
566
573
            }]
567
574
        instance = self._setup_test_clouddbinstance('dbinstance_test', t)
568
 
        self._stubout_validate(instance, neutron=True)
 
575
        self._stubout_validate(instance, neutron=True, with_port=False)
569
576
 
570
577
        ex = self.assertRaises(
571
578
            exception.StackValidationFailed, instance.validate)
609
616
                                        'v4-fixed-ip': '1.2.3.4'}]
610
617
                                 ).AndReturn(fake_dbinstance)
611
618
        self._stubout_check_create_complete(fake_dbinstance)
 
619
        self.stub_PortConstraint_validate()
612
620
        self.m.ReplayAll()
613
621
 
614
622
        scheduler.TaskRunner(instance.create)()
622
630
        t['resources']['MySqlCloudDB']['properties']['networks'] = [
623
631
            {'network': net_id}]
624
632
        instance = self._setup_test_clouddbinstance('dbinstance_test', t)
 
633
        self.stub_NetworkConstraint_validate()
625
634
        self._stubout_common_create()
 
635
        self.m.StubOutWithMock(neutron.NeutronClientPlugin,
 
636
                               'find_neutron_resource')
 
637
        neutron.NeutronClientPlugin.find_neutron_resource(
 
638
            instance.properties.get('networks')[0],
 
639
            'network', 'network').AndReturn(net_id)
626
640
        self.fc.instances.create('test', 1, volume={'size': 30},
627
641
                                 databases=[],
628
642
                                 users=[],
649
663
        t['resources']['MySqlCloudDB']['properties']['networks'] = [
650
664
            {'network': 'somenetname'}]
651
665
        instance = self._setup_test_clouddbinstance('dbinstance_test', t)
 
666
        self.stub_NetworkConstraint_validate()
652
667
        self._stubout_common_create()
 
668
        self.patchobject(instance, 'is_using_neutron', return_value=False)
653
669
        self.m.StubOutWithMock(nova.NovaClientPlugin, '_create')
654
670
        nova.NovaClientPlugin._create().AndReturn(self.nova)
655
671
        self.m.StubOutWithMock(self.nova, 'networks')
656
672
        self.m.StubOutWithMock(self.nova.networks, 'find')
657
673
        self.nova.networks.find(label='somenetname').AndReturn(FakeNet())
658
 
 
659
674
        self.fc.instances.create('test', 1, volume={'size': 30},
660
675
                                 databases=[],
661
676
                                 users=[],