Added a unit test for get_environment_hidden_param

A unit test for verifying that hidden parameters should
be masked in the get stack environment API

Story: 2010555
Task: 47229
Change-Id: I44ef26849ebb450a5643907a0ef47166cfd9b1cb
(cherry picked from commit bdcb2c3bd1)
(cherry picked from commit 89b57e5e2e)
(cherry picked from commit 41a6b91362)
(cherry picked from commit 31778416be)
This commit is contained in:
Chengen Du 2023-02-15 15:34:55 +08:00 committed by Takashi Kajinami
parent a9cebe20ce
commit 895d7ca3cc
1 changed files with 50 additions and 0 deletions

View File

@ -991,6 +991,56 @@ class StackServiceTest(common.HeatTestCase):
# Verify
self.assertEqual(env, found)
def test_get_environment_hidden_param(self):
# Setup
env = {
'parameters': {
'admin': 'testuser',
'pass': 'pa55w0rd'
},
'parameter_defaults': {
'secret': 'dummy'
},
'resource_registry': {
'res': 'resource.yaml'
}
}
t = {
'heat_template_version': '2018-08-31',
'parameters': {
'admin': {'type': 'string'},
'pass': {'type': 'string', 'hidden': True}
},
'resources': {
'res1': {'type': 'res'}
}
}
files = {
'resource.yaml': '''
heat_template_version: 2018-08-31
parameters:
secret:
type: string
hidden: true
'''
}
tmpl = templatem.Template(t, files=files)
stack = parser.Stack(self.ctx, 'get_env_stack', tmpl)
stack.store()
mock_get_stack = self.patchobject(self.eng, '_get_stack')
mock_get_stack.return_value = mock.MagicMock()
mock_get_stack.return_value.raw_template.environment = env
self.patchobject(templatem.Template, 'load', return_value=tmpl)
# Test
found = self.eng.get_environment(self.ctx, stack.identifier())
# Verify
env['parameters']['pass'] = '******'
env['parameter_defaults']['secret'] = '******'
self.assertEqual(env, found)
def test_get_environment_no_env(self):
# Setup
exc = exception.EntityNotFound(entity='stack', name='missing')