summaryrefslogtreecommitdiff
path: root/heat/tests
diff options
context:
space:
mode:
authorSteve Baker <sbaker@redhat.com>2014-06-17 14:40:39 +1200
committerSteve Baker <sbaker@redhat.com>2014-07-21 13:00:26 -0400
commit956632844a251cf0ce61d7eab5d2caaf501546bc (patch)
tree2ede6b7123ccd0e4d68d037a11b24f5792e08eeb /heat/tests
parentec35f074ccc9c11d8bad3059eaacb5cfe14c4653 (diff)
downloadheat-956632844a251cf0ce61d7eab5d2caaf501546bc.tar.gz
Move glance_utils functions to glance client plugin
The glance client plugin is a more obvious home for this sort of function, and this change makes mocking of these functions much easier since a mocked client is no longer needed. To access the methods defined in the client plugin the method Resource.client_plugin has been added. When all clients are contributed by plugins then method Resource.client will call Resource.client_plugin. glance_utils can be deleted since it was only added at the beginning of the Juno cycle. The image constraint has also been moved to the glance plugin. Change-Id: Id31ccd605411ca034addc67d8aadf7cea0904bfd
Diffstat (limited to 'heat/tests')
-rw-r--r--heat/tests/test_autoscaling.py14
-rw-r--r--heat/tests/test_autoscaling_update_policy.py17
-rw-r--r--heat/tests/test_engine_service.py9
-rw-r--r--heat/tests/test_glance_client.py (renamed from heat/tests/test_glance_utils.py)36
-rw-r--r--heat/tests/test_image.py34
-rw-r--r--heat/tests/test_instance.py24
-rw-r--r--heat/tests/test_instance_group.py18
-rw-r--r--heat/tests/test_instance_group_update_policy.py6
-rw-r--r--heat/tests/test_instance_network.py11
-rw-r--r--heat/tests/test_loadbalancer.py9
-rw-r--r--heat/tests/test_metadata_refresh.py14
-rw-r--r--heat/tests/test_neutron_autoscaling.py6
-rw-r--r--heat/tests/test_nokey.py11
-rw-r--r--heat/tests/test_notifications.py4
-rw-r--r--heat/tests/test_server.py54
-rw-r--r--heat/tests/test_server_tags.py17
-rw-r--r--heat/tests/test_sqlalchemy_api.py11
-rw-r--r--heat/tests/test_validate.py19
-rw-r--r--heat/tests/test_volume.py16
19 files changed, 125 insertions, 205 deletions
diff --git a/heat/tests/test_autoscaling.py b/heat/tests/test_autoscaling.py
index beb0eb43d..69a2ea944 100644
--- a/heat/tests/test_autoscaling.py
+++ b/heat/tests/test_autoscaling.py
@@ -21,11 +21,11 @@ from oslo.config import cfg
from heat.common import exception
from heat.common import short_id
from heat.common import template_format
+from heat.engine.clients.os import glance
from heat.engine.notification import autoscaling as notification
from heat.engine import parser
from heat.engine import resource
from heat.engine.resources import autoscaling as asc
-from heat.engine.resources import image
from heat.engine.resources import instance
from heat.engine.resources import loadbalancer
from heat.engine.resources.neutron import loadbalancer as neutron_lb
@@ -151,8 +151,8 @@ class AutoScalingTest(HeatTestCase):
def _stub_create(self, num, with_error=None):
self.m.StubOutWithMock(instance.Instance, 'handle_create')
self.m.StubOutWithMock(instance.Instance, 'check_create_complete')
- self.m.StubOutWithMock(image.ImageConstraint, "validate")
- image.ImageConstraint.validate(
+ self.m.StubOutWithMock(glance.ImageConstraint, "validate")
+ glance.ImageConstraint.validate(
mox.IgnoreArg(), mox.IgnoreArg()).MultipleTimes().AndReturn(True)
if with_error:
instance.Instance.handle_create().AndRaise(
@@ -166,9 +166,9 @@ class AutoScalingTest(HeatTestCase):
cookie).MultipleTimes().AndReturn(True)
def _stub_image_validate(self, num=1):
- self.m.StubOutWithMock(image.ImageConstraint, "validate")
+ self.m.StubOutWithMock(glance.ImageConstraint, "validate")
for x in range(num):
- image.ImageConstraint.validate(
+ glance.ImageConstraint.validate(
mox.IgnoreArg(), mox.IgnoreArg()).AndReturn(True)
def _stub_delete(self, num):
@@ -553,8 +553,8 @@ class AutoScalingTest(HeatTestCase):
self.m.StubOutWithMock(instance.Instance, 'handle_create')
self.m.StubOutWithMock(instance.Instance, 'check_create_complete')
instance.Instance.handle_create().AndRaise(Exception)
- self.m.StubOutWithMock(image.ImageConstraint, "validate")
- image.ImageConstraint.validate(
+ self.m.StubOutWithMock(glance.ImageConstraint, "validate")
+ glance.ImageConstraint.validate(
mox.IgnoreArg(), mox.IgnoreArg()).MultipleTimes().AndReturn(True)
self.m.ReplayAll()
diff --git a/heat/tests/test_autoscaling_update_policy.py b/heat/tests/test_autoscaling_update_policy.py
index ed4252c77..d55b09ef7 100644
--- a/heat/tests/test_autoscaling_update_policy.py
+++ b/heat/tests/test_autoscaling_update_policy.py
@@ -25,7 +25,6 @@ from heat.engine.clients.os import nova
from heat.engine import function
from heat.engine.notification import stack as notification
from heat.engine import parser
-from heat.engine.resources import glance_utils
from heat.engine.resources import instance
from heat.engine.resources import loadbalancer as lb
from heat.engine.resources import wait_condition as wc
@@ -212,13 +211,8 @@ class AutoScalingGroupTest(HeatTestCase):
'http://127.0.0.1:8000/v1/waitcondition')
def _mock_get_image_id_success(self, imageId_input, imageId,
- update_image=None, mock_create=True):
- g_cli_mock = self.m.CreateMockAnything()
- if mock_create:
- self.m.StubOutWithMock(glance.GlanceClientPlugin, '_create')
- glance.GlanceClientPlugin._create().AndReturn(
- g_cli_mock)
- self.m.StubOutWithMock(glance_utils, 'get_image_id')
+ update_image=None):
+ self.m.StubOutWithMock(glance.GlanceClientPlugin, 'get_image_id')
# If update_image is None (create case), validation for initial image
# imageId_input will be invoked multiple times (for each server).
@@ -226,10 +220,10 @@ class AutoScalingGroupTest(HeatTestCase):
# values and new property values will be done, but the order is not
# deterministic. Therefore, using mox.IgnoreArg() for the update case.
if update_image is None:
- glance_utils.get_image_id(g_cli_mock, imageId_input).\
+ glance.GlanceClientPlugin.get_image_id(imageId_input).\
MultipleTimes().AndReturn(imageId)
else:
- glance_utils.get_image_id(g_cli_mock, mox.IgnoreArg()).\
+ glance.GlanceClientPlugin.get_image_id(mox.IgnoreArg()).\
MultipleTimes().AndReturn(imageId)
def _stub_validate(self):
@@ -509,8 +503,7 @@ class AutoScalingGroupTest(HeatTestCase):
num_reloads_expected_on_updt)
self.stub_wallclock()
self._mock_get_image_id_success('F20-x86_64-cfntools', 'image_id',
- update_image=update_image_id,
- mock_create=False)
+ update_image=update_image_id)
stack.validate()
self.m.ReplayAll()
diff --git a/heat/tests/test_engine_service.py b/heat/tests/test_engine_service.py
index 728a27b52..bf714d92b 100644
--- a/heat/tests/test_engine_service.py
+++ b/heat/tests/test_engine_service.py
@@ -39,7 +39,6 @@ from heat.engine import environment
from heat.engine import parser
from heat.engine.properties import Properties
from heat.engine import resource as res
-from heat.engine.resources import glance_utils
from heat.engine.resources import instance as instances
from heat.engine.resources import nova_utils
from heat.engine import service
@@ -204,12 +203,8 @@ def setup_keystone_mocks(mocks, stack):
def setup_mock_for_image_constraint(mocks, imageId_input,
imageId_output=744):
- g_cli_mock = mocks.CreateMockAnything()
- mocks.StubOutWithMock(glance.GlanceClientPlugin, '_create')
- glance.GlanceClientPlugin._create().AndReturn(
- g_cli_mock)
- mocks.StubOutWithMock(glance_utils, 'get_image_id')
- glance_utils.get_image_id(g_cli_mock, imageId_input).\
+ mocks.StubOutWithMock(glance.GlanceClientPlugin, 'get_image_id')
+ glance.GlanceClientPlugin.get_image_id(imageId_input).\
MultipleTimes().AndReturn(imageId_output)
diff --git a/heat/tests/test_glance_utils.py b/heat/tests/test_glance_client.py
index be89aed67..5c1d85164 100644
--- a/heat/tests/test_glance_utils.py
+++ b/heat/tests/test_glance_client.py
@@ -10,26 +10,29 @@
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
-"""Tests for :module:'heat.engine.resources.glance_utils'."""
import uuid
from glanceclient import exc as glance_exceptions
from heat.common import exception
-from heat.engine.resources import glance_utils
from heat.tests.common import HeatTestCase
+from heat.tests import utils
class GlanceUtilsTests(HeatTestCase):
"""
Basic tests for the helper methods in
- :module:'heat.engine.resources.glance_utils'.
+ :module:'heat.engine.resources.clients.os.glance'.
"""
def setUp(self):
super(GlanceUtilsTests, self).setUp()
self.glance_client = self.m.CreateMockAnything()
+ con = utils.dummy_context()
+ c = con.clients
+ self.glance_plugin = c.client_plugin('glance')
+ self.glance_plugin._client = self.glance_client
def test_get_image_id(self):
"""Tests the get_image_id function."""
@@ -45,12 +48,10 @@ class GlanceUtilsTests(HeatTestCase):
filters = {'name': 'noimage'}
self.glance_client.images.list(filters=filters).AndReturn([])
self.m.ReplayAll()
- self.assertEqual(img_id, glance_utils.get_image_id(
- self.glance_client, img_id))
- self.assertEqual(img_id, glance_utils.get_image_id(
- self.glance_client, img_name))
- self.assertRaises(exception.ImageNotFound, glance_utils.get_image_id,
- self.glance_client, 'noimage')
+ self.assertEqual(img_id, self.glance_plugin.get_image_id(img_id))
+ self.assertEqual(img_id, self.glance_plugin.get_image_id(img_name))
+ self.assertRaises(exception.ImageNotFound,
+ self.glance_plugin.get_image_id, 'noimage')
self.m.VerifyAll()
def test_get_image_id_by_name_in_uuid(self):
@@ -62,14 +63,13 @@ class GlanceUtilsTests(HeatTestCase):
my_image.name = img_name
self.glance_client.images = self.m.CreateMockAnything()
self.glance_client.images.get(img_name).AndRaise(
- glance_exceptions.NotFound(404))
+ glance_exceptions.HTTPNotFound())
filters = {'name': img_name}
self.glance_client.images.list(filters=filters).MultipleTimes().\
AndReturn([my_image])
self.m.ReplayAll()
- self.assertEqual(img_id, glance_utils.get_image_id(self.glance_client,
- img_name))
+ self.assertEqual(img_id, self.glance_plugin.get_image_id(img_name))
self.m.VerifyAll()
def test_get_image_id_glance_exception(self):
@@ -84,8 +84,8 @@ class GlanceUtilsTests(HeatTestCase):
expected_error = "Error retrieving image list from glance: Error"
e = self.assertRaises(exception.Error,
- glance_utils.get_image_id_by_name,
- self.glance_client, img_name)
+ self.glance_plugin.get_image_id_by_name,
+ img_name)
self.assertEqual(expected_error, str(e))
self.m.VerifyAll()
@@ -96,15 +96,14 @@ class GlanceUtilsTests(HeatTestCase):
my_image.name = img_name
self.glance_client.images = self.m.CreateMockAnything()
self.glance_client.images.get(img_name).AndRaise(
- glance_exceptions.NotFound(404))
+ glance_exceptions.HTTPNotFound())
filters = {'name': img_name}
self.glance_client.images.list(filters=filters).MultipleTimes().\
AndReturn([])
self.m.ReplayAll()
self.assertRaises(exception.ImageNotFound,
- glance_utils.get_image_id,
- self.glance_client, img_name)
+ self.glance_plugin.get_image_id, img_name)
self.m.VerifyAll()
def test_get_image_id_name_ambiguity(self):
@@ -120,6 +119,5 @@ class GlanceUtilsTests(HeatTestCase):
AndReturn(image_list)
self.m.ReplayAll()
self.assertRaises(exception.PhysicalResourceNameAmbiguity,
- glance_utils.get_image_id,
- self.glance_client, img_name)
+ self.glance_plugin.get_image_id, img_name)
self.m.VerifyAll()
diff --git a/heat/tests/test_image.py b/heat/tests/test_image.py
index ad4f27eb3..2978c170f 100644
--- a/heat/tests/test_image.py
+++ b/heat/tests/test_image.py
@@ -13,28 +13,26 @@
import mock
from heat.common import exception
-from heat.engine import clients
-from heat.engine.resources import glance_utils
-from heat.engine.resources import image
+from heat.engine.clients.os import glance
from heat.tests.common import HeatTestCase
from heat.tests import utils
class ImageConstraintTest(HeatTestCase):
- @mock.patch.object(glance_utils, 'get_image_id')
- def test_validation(self, mock_get_image):
- ctx = utils.dummy_context()
- with mock.patch.object(clients, "OpenStackClients"):
- constraint = image.ImageConstraint()
- mock_get_image.return_value = "id1"
- self.assertTrue(constraint.validate("foo", ctx))
+ def setUp(self):
+ super(ImageConstraintTest, self).setUp()
+ self.ctx = utils.dummy_context()
+ self.mock_get_image = mock.Mock()
+ self.ctx.clients.client_plugin(
+ 'glance').get_image_id = self.mock_get_image
+ self.constraint = glance.ImageConstraint()
- @mock.patch.object(glance_utils, 'get_image_id')
- def test_validation_error(self, mock_get_image):
- ctx = utils.dummy_context()
- with mock.patch.object(clients, "OpenStackClients"):
- constraint = image.ImageConstraint()
- mock_get_image.side_effect = exception.ImageNotFound(
- image_name='bar')
- self.assertFalse(constraint.validate("bar", ctx))
+ def test_validation(self):
+ self.mock_get_image.return_value = "id1"
+ self.assertTrue(self.constraint.validate("foo", self.ctx))
+
+ def test_validation_error(self):
+ self.mock_get_image.side_effect = exception.ImageNotFound(
+ image_name='bar')
+ self.assertFalse(self.constraint.validate("bar", self.ctx))
diff --git a/heat/tests/test_instance.py b/heat/tests/test_instance.py
index e02abc0b1..69a83daae 100644
--- a/heat/tests/test_instance.py
+++ b/heat/tests/test_instance.py
@@ -25,8 +25,6 @@ from heat.engine.clients.os import nova
from heat.engine import environment
from heat.engine import parser
from heat.engine import resource
-from heat.engine.resources import glance_utils
-from heat.engine.resources import image
from heat.engine.resources import instance as instances
from heat.engine.resources import network_interface
from heat.engine.resources import nova_utils
@@ -80,21 +78,13 @@ class InstancesTest(HeatTestCase):
return (template, stack)
def _mock_get_image_id_success(self, imageId_input, imageId):
- g_cli_mock = self.m.CreateMockAnything()
- self.m.StubOutWithMock(glance.GlanceClientPlugin, '_create')
- glance.GlanceClientPlugin._create().AndReturn(
- g_cli_mock)
- self.m.StubOutWithMock(glance_utils, 'get_image_id')
- glance_utils.get_image_id(g_cli_mock, imageId_input).MultipleTimes().\
- AndReturn(imageId)
+ self.m.StubOutWithMock(glance.GlanceClientPlugin, 'get_image_id')
+ glance.GlanceClientPlugin.get_image_id(
+ imageId_input).MultipleTimes().AndReturn(imageId)
def _mock_get_image_id_fail(self, image_id, exp):
- g_cli_mock = self.m.CreateMockAnything()
- self.m.StubOutWithMock(glance.GlanceClientPlugin, '_create')
- glance.GlanceClientPlugin._create().AndReturn(
- g_cli_mock)
- self.m.StubOutWithMock(glance_utils, 'get_image_id')
- glance_utils.get_image_id(g_cli_mock, image_id).AndRaise(exp)
+ self.m.StubOutWithMock(glance.GlanceClientPlugin, 'get_image_id')
+ glance.GlanceClientPlugin.get_image_id(image_id).AndRaise(exp)
def _get_test_template(self, stack_name, image_id=None):
(tmpl, stack) = self._setup_test_stack(stack_name)
@@ -712,8 +702,8 @@ class InstancesTest(HeatTestCase):
instance = self._create_test_instance(return_server,
'in_update2')
- self.m.StubOutWithMock(image.ImageConstraint, "validate")
- image.ImageConstraint.validate(
+ self.m.StubOutWithMock(glance.ImageConstraint, "validate")
+ glance.ImageConstraint.validate(
mox.IgnoreArg(), mox.IgnoreArg()).MultipleTimes().AndReturn(True)
self.m.ReplayAll()
diff --git a/heat/tests/test_instance_group.py b/heat/tests/test_instance_group.py
index 2a4f0980e..3aadc9513 100644
--- a/heat/tests/test_instance_group.py
+++ b/heat/tests/test_instance_group.py
@@ -17,10 +17,10 @@ import mox
from heat.common import exception
from heat.common import template_format
+from heat.engine.clients.os import glance
from heat.engine import parser
from heat.engine import resource
from heat.engine import resources
-from heat.engine.resources import image
from heat.engine.resources import instance
from heat.engine.resources import nova_keypair
from heat.engine import rsrc_defn
@@ -75,8 +75,8 @@ class InstanceGroupTest(HeatTestCase):
self.m.StubOutWithMock(nova_keypair.KeypairConstraint, 'validate')
nova_keypair.KeypairConstraint.validate(
mox.IgnoreArg(), mox.IgnoreArg()).MultipleTimes().AndReturn(True)
- self.m.StubOutWithMock(image.ImageConstraint, 'validate')
- image.ImageConstraint.validate(
+ self.m.StubOutWithMock(glance.ImageConstraint, 'validate')
+ glance.ImageConstraint.validate(
mox.IgnoreArg(), mox.IgnoreArg()).MultipleTimes().AndReturn(True)
self.m.StubOutWithMock(instance_class, 'handle_create')
@@ -165,8 +165,8 @@ class InstanceGroupTest(HeatTestCase):
self.m.StubOutWithMock(nova_keypair.KeypairConstraint, 'validate')
nova_keypair.KeypairConstraint.validate(
mox.IgnoreArg(), mox.IgnoreArg()).MultipleTimes().AndReturn(True)
- self.m.StubOutWithMock(image.ImageConstraint, 'validate')
- image.ImageConstraint.validate(
+ self.m.StubOutWithMock(glance.ImageConstraint, 'validate')
+ glance.ImageConstraint.validate(
mox.IgnoreArg(), mox.IgnoreArg()).MultipleTimes().AndReturn(True)
self.m.ReplayAll()
@@ -230,8 +230,8 @@ class InstanceGroupTest(HeatTestCase):
self.m.StubOutWithMock(nova_keypair.KeypairConstraint, 'validate')
nova_keypair.KeypairConstraint.validate(
mox.IgnoreArg(), mox.IgnoreArg()).MultipleTimes().AndReturn(True)
- self.m.StubOutWithMock(image.ImageConstraint, 'validate')
- image.ImageConstraint.validate(
+ self.m.StubOutWithMock(glance.ImageConstraint, 'validate')
+ glance.ImageConstraint.validate(
mox.IgnoreArg(), mox.IgnoreArg()).MultipleTimes().AndReturn(True)
self.m.StubOutWithMock(instance.Instance, 'handle_create')
instance.Instance.handle_create().AndRaise(Exception)
@@ -277,8 +277,8 @@ class InstanceGroupTest(HeatTestCase):
self.m.StubOutWithMock(nova_keypair.KeypairConstraint, 'validate')
nova_keypair.KeypairConstraint.validate(
mox.IgnoreArg(), mox.IgnoreArg()).MultipleTimes().AndReturn(True)
- self.m.StubOutWithMock(image.ImageConstraint, 'validate')
- image.ImageConstraint.validate(
+ self.m.StubOutWithMock(glance.ImageConstraint, 'validate')
+ glance.ImageConstraint.validate(
mox.IgnoreArg(), mox.IgnoreArg()).MultipleTimes().AndReturn(True)
self.m.StubOutWithMock(instance.Instance, 'handle_create')
instance.Instance.handle_create().AndRaise(Exception)
diff --git a/heat/tests/test_instance_group_update_policy.py b/heat/tests/test_instance_group_update_policy.py
index c6a461b9b..96e465ebe 100644
--- a/heat/tests/test_instance_group_update_policy.py
+++ b/heat/tests/test_instance_group_update_policy.py
@@ -19,10 +19,10 @@ from testtools.matchers import MatchesRegex
from heat.common import exception
from heat.common import template_format
+from heat.engine.clients.os import glance
from heat.engine.clients.os import nova
from heat.engine import function
from heat.engine import parser
-from heat.engine.resources import image
from heat.engine.resources import instance
from heat.engine.resources import nova_keypair
from heat.tests.common import HeatTestCase
@@ -169,8 +169,8 @@ class InstanceGroupTest(HeatTestCase):
self.m.StubOutWithMock(nova_keypair.KeypairConstraint, 'validate')
nova_keypair.KeypairConstraint.validate(
mox.IgnoreArg(), mox.IgnoreArg()).MultipleTimes().AndReturn(True)
- self.m.StubOutWithMock(image.ImageConstraint, 'validate')
- image.ImageConstraint.validate(
+ self.m.StubOutWithMock(glance.ImageConstraint, 'validate')
+ glance.ImageConstraint.validate(
mox.IgnoreArg(), mox.IgnoreArg()).MultipleTimes().AndReturn(True)
def _stub_grp_create(self, capacity):
diff --git a/heat/tests/test_instance_network.py b/heat/tests/test_instance_network.py
index 77d23d651..10186742a 100644
--- a/heat/tests/test_instance_network.py
+++ b/heat/tests/test_instance_network.py
@@ -18,7 +18,6 @@ from heat.engine.clients.os import glance
from heat.engine.clients.os import nova
from heat.engine import environment
from heat.engine import parser
-from heat.engine.resources import glance_utils
from heat.engine.resources import instance as instances
from heat.engine.resources import network_interface as network_interfaces
from heat.engine.resources import nova_utils
@@ -152,13 +151,9 @@ class instancesTest(HeatTestCase):
self.fc = fakes.FakeClient()
def _mock_get_image_id_success(self, imageId_input, imageId):
- g_cli_mock = self.m.CreateMockAnything()
- self.m.StubOutWithMock(glance.GlanceClientPlugin, '_create')
- glance.GlanceClientPlugin._create().AndReturn(
- g_cli_mock)
- self.m.StubOutWithMock(glance_utils, 'get_image_id')
- glance_utils.get_image_id(g_cli_mock, imageId_input).MultipleTimes().\
- AndReturn(imageId)
+ self.m.StubOutWithMock(glance.GlanceClientPlugin, 'get_image_id')
+ glance.GlanceClientPlugin.get_image_id(
+ imageId_input).MultipleTimes().AndReturn(imageId)
def _create_test_instance(self, return_server, name):
stack_name = '%s_s' % name
diff --git a/heat/tests/test_loadbalancer.py b/heat/tests/test_loadbalancer.py
index b78778d88..140bc73f9 100644
--- a/heat/tests/test_loadbalancer.py
+++ b/heat/tests/test_loadbalancer.py
@@ -23,7 +23,6 @@ from heat.common import template_format
from heat.engine.clients.os import glance
from heat.engine.clients.os import nova
from heat.engine import resource
-from heat.engine.resources import glance_utils
from heat.engine.resources import instance
from heat.engine.resources import loadbalancer as lb
from heat.engine.resources import wait_condition as wc
@@ -124,12 +123,8 @@ class LoadBalancerTest(HeatTestCase):
return rsrc
def _mock_get_image_id_success(self, imageId_input, imageId):
- g_cli_mock = self.m.CreateMockAnything()
- self.m.StubOutWithMock(glance.GlanceClientPlugin, '_create')
- glance.GlanceClientPlugin._create().AndReturn(
- g_cli_mock)
- self.m.StubOutWithMock(glance_utils, 'get_image_id')
- glance_utils.get_image_id(g_cli_mock, imageId_input).\
+ self.m.StubOutWithMock(glance.GlanceClientPlugin, 'get_image_id')
+ glance.GlanceClientPlugin.get_image_id(imageId_input).\
MultipleTimes().AndReturn(imageId)
def _create_stubs(self, key_name='test', stub_meta=True):
diff --git a/heat/tests/test_metadata_refresh.py b/heat/tests/test_metadata_refresh.py
index 3a5b9ce44..07a75758f 100644
--- a/heat/tests/test_metadata_refresh.py
+++ b/heat/tests/test_metadata_refresh.py
@@ -18,9 +18,9 @@ from oslo.config import cfg
from heat.common import identifier
from heat.common import template_format
+from heat.engine.clients.os import glance
from heat.engine import environment
from heat.engine import parser
-from heat.engine.resources import image
from heat.engine.resources import instance
from heat.engine.resources import nova_keypair
from heat.engine.resources import server
@@ -168,8 +168,8 @@ class MetadataRefreshTest(HeatTestCase):
self.m.StubOutWithMock(nova_keypair.KeypairConstraint, 'validate')
nova_keypair.KeypairConstraint.validate(
mox.IgnoreArg(), mox.IgnoreArg()).MultipleTimes().AndReturn(True)
- self.m.StubOutWithMock(image.ImageConstraint, 'validate')
- image.ImageConstraint.validate(
+ self.m.StubOutWithMock(glance.ImageConstraint, 'validate')
+ glance.ImageConstraint.validate(
mox.IgnoreArg(), mox.IgnoreArg()).MultipleTimes().AndReturn(True)
self.m.StubOutWithMock(instance.Instance, 'handle_create')
@@ -237,8 +237,8 @@ class WaitCondMetadataUpdateTest(HeatTestCase):
self.m.StubOutWithMock(nova_keypair.KeypairConstraint, 'validate')
nova_keypair.KeypairConstraint.validate(
mox.IgnoreArg(), mox.IgnoreArg()).MultipleTimes().AndReturn(True)
- self.m.StubOutWithMock(image.ImageConstraint, 'validate')
- image.ImageConstraint.validate(
+ self.m.StubOutWithMock(glance.ImageConstraint, 'validate')
+ glance.ImageConstraint.validate(
mox.IgnoreArg(), mox.IgnoreArg()).MultipleTimes().AndReturn(True)
self.m.StubOutWithMock(instance.Instance, 'handle_create')
@@ -333,8 +333,8 @@ class MetadataRefreshTestServer(HeatTestCase):
self.m.StubOutWithMock(nova_keypair.KeypairConstraint, 'validate')
nova_keypair.KeypairConstraint.validate(
mox.IgnoreArg(), mox.IgnoreArg()).MultipleTimes().AndReturn(True)
- self.m.StubOutWithMock(image.ImageConstraint, 'validate')
- image.ImageConstraint.validate(
+ self.m.StubOutWithMock(glance.ImageConstraint, 'validate')
+ glance.ImageConstraint.validate(
mox.IgnoreArg(), mox.IgnoreArg()).MultipleTimes().AndReturn(True)
self.m.StubOutWithMock(server.Server, 'handle_create')
diff --git a/heat/tests/test_neutron_autoscaling.py b/heat/tests/test_neutron_autoscaling.py
index 3bd9e2bd3..86bc7e9ef 100644
--- a/heat/tests/test_neutron_autoscaling.py
+++ b/heat/tests/test_neutron_autoscaling.py
@@ -20,9 +20,9 @@ from oslo.config import cfg
from heat.common import template_format
from heat.db import api as db_api
+from heat.engine.clients.os import glance
from heat.engine import environment
from heat.engine import parser
-from heat.engine.resources import image
from heat.engine.resources import instance
from heat.engine.resources import nova_utils
from heat.engine import template
@@ -129,7 +129,7 @@ class AutoScalingTest(HeatTestCase):
self.m.StubOutWithMock(instance.Instance, 'handle_create')
self.m.StubOutWithMock(instance.Instance, 'check_create_complete')
- self.m.StubOutWithMock(image.ImageConstraint, "validate")
+ self.m.StubOutWithMock(glance.ImageConstraint, "validate")
def test_lb(self):
@@ -278,7 +278,7 @@ class AutoScalingTest(HeatTestCase):
instance.Instance.check_create_complete(mox.IgnoreArg())\
.AndReturn(True)
- image.ImageConstraint.validate(
+ glance.ImageConstraint.validate(
mox.IgnoreArg(), mox.IgnoreArg()).MultipleTimes().AndReturn(True)
nova_utils.server_to_ipaddress(
diff --git a/heat/tests/test_nokey.py b/heat/tests/test_nokey.py
index 49b7baf40..54cbab621 100644
--- a/heat/tests/test_nokey.py
+++ b/heat/tests/test_nokey.py
@@ -14,7 +14,6 @@
from heat.common import template_format
from heat.engine.clients.os import glance
from heat.engine.clients.os import nova
-from heat.engine.resources import glance_utils
from heat.engine.resources import instance as instances
from heat.engine.resources import nova_utils
from heat.engine import scheduler
@@ -62,13 +61,9 @@ class nokeyTest(HeatTestCase):
self.m.StubOutWithMock(nova.NovaClientPlugin, '_create')
nova.NovaClientPlugin._create().AndReturn(self.fc)
- g_cli_mock = self.m.CreateMockAnything()
- self.m.StubOutWithMock(glance.GlanceClientPlugin, '_create')
- glance.GlanceClientPlugin._create().AndReturn(
- g_cli_mock)
- self.m.StubOutWithMock(glance_utils, 'get_image_id')
- glance_utils.get_image_id(g_cli_mock, 'CentOS 5.2').MultipleTimes().\
- AndReturn(1)
+ self.m.StubOutWithMock(glance.GlanceClientPlugin, 'get_image_id')
+ glance.GlanceClientPlugin.get_image_id(
+ 'CentOS 5.2').MultipleTimes().AndReturn(1)
# need to resolve the template functions
server_userdata = nova_utils.build_userdata(
diff --git a/heat/tests/test_notifications.py b/heat/tests/test_notifications.py
index 195794782..cd78fc722 100644
--- a/heat/tests/test_notifications.py
+++ b/heat/tests/test_notifications.py
@@ -15,12 +15,12 @@ import mock
from heat.common import exception
from heat.common import template_format
+from heat.engine.clients.os import glance
from heat.engine import environment
from heat.engine import parser
from heat.engine import resource
# imports for mocking
from heat.engine.resources import autoscaling
-from heat.engine.resources import image
from heat.engine.resources import instance
from heat.engine.resources import loadbalancer
from heat.engine.resources import nova_keypair
@@ -167,7 +167,7 @@ class ScaleNotificationTest(common.HeatTestCase):
def mock_stack_except_for_group(self):
self.m_validate = self.patchobject(parser.Stack, 'validate')
self.patchobject(nova_keypair.KeypairConstraint, 'validate')
- self.patchobject(image.ImageConstraint, 'validate')
+ self.patchobject(glance.ImageConstraint, 'validate')
self.patchobject(instance.Instance, 'handle_create')\
.return_value = True
self.patchobject(instance.Instance, 'check_create_complete')\
diff --git a/heat/tests/test_server.py b/heat/tests/test_server.py
index c95df5e8b..d7a8b7a7e 100644
--- a/heat/tests/test_server.py
+++ b/heat/tests/test_server.py
@@ -26,8 +26,6 @@ from heat.engine.clients.os import nova
from heat.engine import environment
from heat.engine import parser
from heat.engine import resource
-from heat.engine.resources import glance_utils
-from heat.engine.resources import image
from heat.engine.resources import nova_utils
from heat.engine.resources import server as servers
from heat.engine.resources.software_config import software_config as sc
@@ -162,28 +160,18 @@ class ServersTest(HeatTestCase):
return fake_interface(port, mac, ip)
def _mock_get_image_id_success(self, imageId_input, imageId,
- server_rebuild=False,
- mock_create=True):
- g_cli_mock = self.m.CreateMockAnything()
- if mock_create:
- self.m.StubOutWithMock(glance.GlanceClientPlugin, '_create')
- glance.GlanceClientPlugin._create().AndReturn(
- g_cli_mock)
- self.m.StubOutWithMock(glance_utils, 'get_image_id')
- glance_utils.get_image_id(g_cli_mock, imageId_input).MultipleTimes().\
- AndReturn(imageId)
+ server_rebuild=False):
+ self.m.StubOutWithMock(glance.GlanceClientPlugin, 'get_image_id')
+ glance.GlanceClientPlugin.get_image_id(
+ imageId_input).MultipleTimes().AndReturn(imageId)
if server_rebuild:
- glance_utils.get_image_id(g_cli_mock, 'F17-x86_64-gold').\
+ glance.GlanceClientPlugin.get_image_id('F17-x86_64-gold').\
MultipleTimes().AndReturn(744)
def _mock_get_image_id_fail(self, image_id, exp):
- g_cli_mock = self.m.CreateMockAnything()
- self.m.StubOutWithMock(glance.GlanceClientPlugin, '_create')
- glance.GlanceClientPlugin._create().AndReturn(
- g_cli_mock)
- self.m.StubOutWithMock(glance_utils, 'get_image_id')
- glance_utils.get_image_id(g_cli_mock, image_id).AndRaise(exp)
+ self.m.StubOutWithMock(glance.GlanceClientPlugin, 'get_image_id')
+ glance.GlanceClientPlugin.get_image_id(image_id).AndRaise(exp)
def _mock_get_keypair_success(self, keypair_input, keypair):
n_cli_mock = self.m.CreateMockAnything()
@@ -835,8 +823,8 @@ class ServersTest(HeatTestCase):
self.m.StubOutWithMock(nova.NovaClientPlugin, '_create')
nova.NovaClientPlugin._create().AndReturn(self.fc)
- self.m.StubOutWithMock(image.ImageConstraint, "validate")
- image.ImageConstraint.validate(
+ self.m.StubOutWithMock(glance.ImageConstraint, "validate")
+ glance.ImageConstraint.validate(
mox.IgnoreArg(), mox.IgnoreArg()).MultipleTimes().AndReturn(True)
self.m.ReplayAll()
self.m.ReplayAll()
@@ -1063,7 +1051,7 @@ class ServersTest(HeatTestCase):
self.m.StubOutWithMock(self.fc.servers, 'set_meta')
self.fc.servers.set_meta(new_return_server,
new_meta).AndReturn(None)
- self._mock_get_image_id_success('CentOS 5.2', 1, mock_create=False)
+ self._mock_get_image_id_success('CentOS 5.2', 1)
self.m.ReplayAll()
update_template = copy.deepcopy(server.t)
update_template['Properties']['metadata'] = new_meta
@@ -1213,8 +1201,8 @@ class ServersTest(HeatTestCase):
image_id = self.getUniqueString()
self.m.StubOutWithMock(nova.NovaClientPlugin, '_create')
nova.NovaClientPlugin._create().AndReturn(self.fc)
- self.m.StubOutWithMock(image.ImageConstraint, "validate")
- image.ImageConstraint.validate(
+ self.m.StubOutWithMock(glance.ImageConstraint, "validate")
+ glance.ImageConstraint.validate(
mox.IgnoreArg(), mox.IgnoreArg()).MultipleTimes().AndReturn(True)
self.m.ReplayAll()
@@ -1323,8 +1311,8 @@ class ServersTest(HeatTestCase):
server = self._create_test_server(return_server,
'update_prop')
- self.m.StubOutWithMock(image.ImageConstraint, "validate")
- image.ImageConstraint.validate(
+ self.m.StubOutWithMock(glance.ImageConstraint, "validate")
+ glance.ImageConstraint.validate(
mox.IgnoreArg(), mox.IgnoreArg()).MultipleTimes().AndReturn(True)
self.m.ReplayAll()
@@ -2451,12 +2439,12 @@ class ServersTest(HeatTestCase):
def test_server_properties_validation_create_and_update(self):
return_server = self.fc.servers.list()[1]
- self.m.StubOutWithMock(image.ImageConstraint, "validate")
+ self.m.StubOutWithMock(glance.ImageConstraint, "validate")
# verify that validate gets invoked exactly once for create
- image.ImageConstraint.validate(
+ glance.ImageConstraint.validate(
'CentOS 5.2', mox.IgnoreArg()).AndReturn(True)
# verify that validate gets invoked exactly once for update
- image.ImageConstraint.validate(
+ glance.ImageConstraint.validate(
'Update Image', mox.IgnoreArg()).AndReturn(True)
self.m.ReplayAll()
@@ -2476,14 +2464,14 @@ class ServersTest(HeatTestCase):
def test_server_properties_validation_create_and_update_fail(self):
return_server = self.fc.servers.list()[1]
- self.m.StubOutWithMock(image.ImageConstraint, "validate")
+ self.m.StubOutWithMock(glance.ImageConstraint, "validate")
# verify that validate gets invoked exactly once for create
- image.ImageConstraint.validate(
+ glance.ImageConstraint.validate(
'CentOS 5.2', mox.IgnoreArg()).AndReturn(True)
# verify that validate gets invoked exactly once for update
ex = exception.ImageNotFound(image_name='Update Image')
- image.ImageConstraint.validate('Update Image',
- mox.IgnoreArg()).AndRaise(ex)
+ glance.ImageConstraint.validate('Update Image',
+ mox.IgnoreArg()).AndRaise(ex)
self.m.ReplayAll()
# create
diff --git a/heat/tests/test_server_tags.py b/heat/tests/test_server_tags.py
index 99622957c..9506f942f 100644
--- a/heat/tests/test_server_tags.py
+++ b/heat/tests/test_server_tags.py
@@ -21,7 +21,6 @@ from heat.engine.clients.os import glance
from heat.engine.clients.os import nova
from heat.engine import environment
from heat.engine import parser
-from heat.engine.resources import glance_utils
from heat.engine.resources import instance as instances
from heat.engine.resources import nova_utils
from heat.engine import scheduler
@@ -131,16 +130,10 @@ class ServerTagsTest(HeatTestCase):
super(ServerTagsTest, self).setUp()
self.fc = fakes.FakeClient()
- def _mock_get_image_id_success(self, imageId_input, imageId,
- mock_create=True):
- g_cli_mock = self.m.CreateMockAnything()
- if mock_create:
- self.m.StubOutWithMock(glance.GlanceClientPlugin, '_create')
- glance.GlanceClientPlugin._create().AndReturn(
- g_cli_mock)
- self.m.StubOutWithMock(glance_utils, 'get_image_id')
- glance_utils.get_image_id(g_cli_mock, imageId_input).MultipleTimes().\
- AndReturn(imageId)
+ def _mock_get_image_id_success(self, imageId_input, imageId):
+ self.m.StubOutWithMock(glance.GlanceClientPlugin, 'get_image_id')
+ glance.GlanceClientPlugin.get_image_id(
+ imageId_input).MultipleTimes().AndReturn(imageId)
def _setup_test_instance(self, intags=None, nova_tags=None):
stack_name = 'tag_test'
@@ -210,7 +203,7 @@ class ServerTagsTest(HeatTestCase):
self.m.StubOutWithMock(self.fc.servers, 'set_meta')
self.fc.servers.set_meta(self.fc.servers.list()[1],
new_metadata).AndReturn(None)
- self._mock_get_image_id_success('CentOS 5.2', 1, False)
+ self._mock_get_image_id_success('CentOS 5.2', 1)
self.m.ReplayAll()
update_template = copy.deepcopy(instance.t)
update_template['Properties']['Tags'] = new_tags
diff --git a/heat/tests/test_sqlalchemy_api.py b/heat/tests/test_sqlalchemy_api.py
index 43dff8072..fd855a6f9 100644
--- a/heat/tests/test_sqlalchemy_api.py
+++ b/heat/tests/test_sqlalchemy_api.py
@@ -30,7 +30,6 @@ from heat.engine.clients.os import nova
from heat.engine import environment
from heat.engine import parser
from heat.engine.resource import Resource
-from heat.engine.resources import glance_utils
from heat.engine.resources import instance as instances
from heat.engine import scheduler
from heat.openstack.common import timeutils
@@ -96,13 +95,9 @@ class SqlAlchemyTest(HeatTestCase):
super(SqlAlchemyTest, self).tearDown()
def _mock_get_image_id_success(self, imageId_input, imageId):
- g_cli_mock = self.m.CreateMockAnything()
- self.m.StubOutWithMock(glance.GlanceClientPlugin, '_create')
- glance.GlanceClientPlugin._create().AndReturn(
- g_cli_mock)
- self.m.StubOutWithMock(glance_utils, 'get_image_id')
- glance_utils.get_image_id(g_cli_mock, imageId_input).MultipleTimes().\
- AndReturn(imageId)
+ self.m.StubOutWithMock(glance.GlanceClientPlugin, 'get_image_id')
+ glance.GlanceClientPlugin.get_image_id(
+ imageId_input).MultipleTimes().AndReturn(imageId)
def _setup_test_stack(self, stack_name, stack_id=None, owner_id=None,
stack_user_project_id=None):
diff --git a/heat/tests/test_validate.py b/heat/tests/test_validate.py
index 0181d57f2..98d3f3ec3 100644
--- a/heat/tests/test_validate.py
+++ b/heat/tests/test_validate.py
@@ -22,7 +22,6 @@ from heat.engine import environment
from heat.engine.hot.template import HOTemplate
from heat.engine import parser
from heat.engine import resources
-from heat.engine.resources import glance_utils
from heat.engine import service
from heat.tests.common import HeatTestCase
from heat.tests import utils
@@ -817,21 +816,13 @@ class validateTest(HeatTestCase):
self.addCleanup(self.mock_warnings.stop)
def _mock_get_image_id_success(self, imageId_input, imageId):
- g_cli_mock = self.m.CreateMockAnything()
- self.m.StubOutWithMock(glance.GlanceClientPlugin, '_create')
- glance.GlanceClientPlugin._create().AndReturn(
- g_cli_mock)
- self.m.StubOutWithMock(glance_utils, 'get_image_id')
- glance_utils.get_image_id(g_cli_mock, imageId_input).MultipleTimes().\
- AndReturn(imageId)
+ self.m.StubOutWithMock(glance.GlanceClientPlugin, 'get_image_id')
+ glance.GlanceClientPlugin.get_image_id(
+ imageId_input).MultipleTimes().AndReturn(imageId)
def _mock_get_image_id_fail(self, image_id, exp):
- g_cli_mock = self.m.CreateMockAnything()
- self.m.StubOutWithMock(glance.GlanceClientPlugin, '_create')
- glance.GlanceClientPlugin._create().AndReturn(
- g_cli_mock)
- self.m.StubOutWithMock(glance_utils, 'get_image_id')
- glance_utils.get_image_id(g_cli_mock, image_id).AndRaise(exp)
+ self.m.StubOutWithMock(glance.GlanceClientPlugin, 'get_image_id')
+ glance.GlanceClientPlugin.get_image_id(image_id).AndRaise(exp)
def test_validate_volumeattach_valid(self):
t = template_format.parse(test_template_volumeattach % 'vdq')
diff --git a/heat/tests/test_volume.py b/heat/tests/test_volume.py
index 1895b95fb..d4b12e0d1 100644
--- a/heat/tests/test_volume.py
+++ b/heat/tests/test_volume.py
@@ -24,8 +24,6 @@ from heat.common import template_format
from heat.engine.clients.os import cinder
from heat.engine.clients.os import glance
from heat.engine.clients.os import nova
-from heat.engine.resources import glance_utils
-from heat.engine.resources import image
from heat.engine.resources import instance
from heat.engine.resources import volume as vol
from heat.engine import rsrc_defn
@@ -215,12 +213,12 @@ class VolumeTest(HeatTestCase):
self.m.StubOutWithMock(instance.Instance, 'check_create_complete')
self.m.StubOutWithMock(vol.VolumeAttachment, 'handle_create')
self.m.StubOutWithMock(vol.VolumeAttachment, 'check_create_complete')
- self.m.StubOutWithMock(image.ImageConstraint, "validate")
+ self.m.StubOutWithMock(glance.ImageConstraint, "validate")
instance.Instance.handle_create().AndReturn(None)
instance.Instance.check_create_complete(None).AndReturn(True)
cinder.CinderClientPlugin._create().AndReturn(
self.cinder_fc)
- image.ImageConstraint.validate(
+ glance.ImageConstraint.validate(
mox.IgnoreArg(), mox.IgnoreArg()).MultipleTimes().AndReturn(True)
vol_name = utils.PhysName(stack_name, 'DataVolume')
self.cinder_fc.volumes.create(
@@ -885,13 +883,9 @@ class VolumeTest(HeatTestCase):
image_id = '46988116-6703-4623-9dbc-2bc6d284021b'
cinder.CinderClientPlugin._create().AndReturn(
self.cinder_fc)
- g_cli_mock = self.m.CreateMockAnything()
- self.m.StubOutWithMock(glance.GlanceClientPlugin, '_create')
- glance.GlanceClientPlugin._create().AndReturn(
- g_cli_mock)
- self.m.StubOutWithMock(glance_utils, 'get_image_id')
- glance_utils.get_image_id(g_cli_mock, image_id).MultipleTimes().\
- AndReturn(image_id)
+ self.m.StubOutWithMock(glance.GlanceClientPlugin, 'get_image_id')
+ glance.GlanceClientPlugin.get_image_id(
+ image_id).MultipleTimes().AndReturn(image_id)
self.cinder_fc.volumes.create(
size=1, availability_zone='nova',