mirror of
https://github.com/saltstack/salt.git
synced 2025-04-17 10:10:20 +00:00
Additional tests, but disable the test for distinct lists, because of a problem with context in test suite
This commit is contained in:
parent
3d2aec05e5
commit
30eb5fccf7
3 changed files with 20 additions and 12 deletions
|
@ -128,14 +128,14 @@ def list_present(name, value, delimiter=DEFAULT_TARGET_DELIM):
|
|||
- web
|
||||
- dev
|
||||
'''
|
||||
|
||||
name = re.sub(delimiter, DEFAULT_TARGET_DELIM, name)
|
||||
ret = {'name': name,
|
||||
'changes': {},
|
||||
'result': True,
|
||||
'comment': ''}
|
||||
grain = __salt__['grains.get'](name)
|
||||
|
||||
print('Pinting context')
|
||||
print(__context__)
|
||||
if grain:
|
||||
# check whether grain is a list
|
||||
if not isinstance(grain, list):
|
||||
|
@ -152,9 +152,12 @@ def list_present(name, value, delimiter=DEFAULT_TARGET_DELIM):
|
|||
if intersection:
|
||||
value = list(set(value).difference(__context__['pending_grains'][name]))
|
||||
ret['comment'] = 'Removed value {0} from update due to context found in "{1}".\n'.format(value, name)
|
||||
print('pre context set')
|
||||
if 'pending_grains' not in __context__:
|
||||
print('init pending grains context')
|
||||
__context__['pending_grains'] = {}
|
||||
if name not in __context__['pending_grains']:
|
||||
print('populating pending grains context')
|
||||
__context__['pending_grains'][name] = set()
|
||||
__context__['pending_grains'][name].update(value)
|
||||
else:
|
||||
|
|
15
tests/integration/files/file/base/issue-31427.sls
Normal file
15
tests/integration/files/file/base/issue-31427.sls
Normal file
|
@ -0,0 +1,15 @@
|
|||
roles:
|
||||
grains.list_present:
|
||||
- name: roles
|
||||
- value:
|
||||
- elliptic
|
||||
- parabolic
|
||||
- hyperbolic
|
||||
|
||||
additional-roles:
|
||||
grains.list_present:
|
||||
- name: roles
|
||||
- value:
|
||||
- hyperbolic
|
||||
- diabolic
|
||||
|
|
@ -100,16 +100,6 @@ class TestModulesGrains(integration.ModuleCase):
|
|||
['level1:level2']),
|
||||
'foo')
|
||||
|
||||
def test_list_present_distinct(self):
|
||||
'''
|
||||
Test a case where two states are run and both attempt to update a list
|
||||
of grains, resulting in duplicate keys.
|
||||
|
||||
This issue is fully outlined in GitHub issue #31427
|
||||
'''
|
||||
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
from integration import run_tests
|
||||
run_tests(TestModulesGrains)
|
||||
|
|
Loading…
Add table
Reference in a new issue