Stack update call needs password

Stack update call needs password otherwise it fails.
Added missing tests.

Change-Id: I99b0ce460c772862b22fa0216466589893948178
Closes-bug: #1394505
This commit is contained in:
Ladislav Smola 2014-11-20 10:40:02 +01:00
parent 05ed60b123
commit 01f5d1e718
3 changed files with 25 additions and 7 deletions

View File

@ -102,10 +102,8 @@ def stack_create(request, password=None, **kwargs):
return heatclient(request, password).stacks.create(**kwargs)
def stack_update(request, stack_id, **kwargs):
if kwargs.get('password'):
kwargs.pop('password')
return heatclient(request).stacks.update(stack_id, **kwargs)
def stack_update(request, stack_id, password=None, **kwargs):
return heatclient(request, password).stacks.update(stack_id, **kwargs)
def events_list(request, stack_name):

View File

@ -176,6 +176,23 @@ class HeatApiTests(test.APITestCase):
template = api.heat.template_get(self.request, stack_id)
self.assertEqual(mock_data_template.data, template.data)
def test_stack_create(self):
api_stacks = self.stacks.list()
stack = api_stacks[0]
heatclient = self.stub_heatclient()
heatclient.stacks = self.mox.CreateMockAnything()
form_data = {'timeout_mins': 600}
password = 'secret'
heatclient.stacks.create(**form_data).AndReturn(stack)
self.mox.ReplayAll()
returned_stack = api.heat.stack_create(self.request,
password,
**form_data)
from heatclient.v1 import stacks
self.assertIsInstance(returned_stack, stacks.Stack)
def test_stack_update(self):
api_stacks = self.stacks.list()
stack = api_stacks[0]
@ -184,11 +201,13 @@ class HeatApiTests(test.APITestCase):
heatclient = self.stub_heatclient()
heatclient.stacks = self.mox.CreateMockAnything()
form_data = {'timeout_mins': 600}
password = 'secret'
heatclient.stacks.update(stack_id, **form_data).AndReturn(stack)
self.mox.ReplayAll()
returned_stack = api.heat.stack_update(self.request,
stack_id,
password,
**form_data)
from heatclient.v1 import stacks
self.assertIsInstance(returned_stack, stacks.Stack)

View File

@ -293,9 +293,10 @@ class APITestCase(TestCase):
api.nova.novaclient = lambda request: self.stub_novaclient()
api.neutron.neutronclient = lambda request: self.stub_neutronclient()
api.cinder.cinderclient = lambda request: self.stub_cinderclient()
api.heat.heatclient = lambda request: self.stub_heatclient()
api.ceilometer.ceilometerclient = lambda request: \
self.stub_ceilometerclient()
api.heat.heatclient = (lambda request, password=None:
self.stub_heatclient())
api.ceilometer.ceilometerclient = (lambda request:
self.stub_ceilometerclient())
api.trove.troveclient = lambda request: self.stub_troveclient()
api.sahara.client = lambda request: self.stub_saharaclient()