1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 |
- # -*- coding: utf-8 -*-
- '''
- Test case for env sdb module
- '''
- from __future__ import absolute_import, print_function, unicode_literals
- import os
- import textwrap
- # Import Salt Testing libs
- from tests.support.case import ModuleCase
- from tests.support.paths import FILES
- from tests.support.mixins import SaltReturnAssertsMixin
- # Import salt libs
- import salt.utils.files
- STATE_DIR = os.path.join(FILES, 'file', 'base')
- class EnvTestCase(ModuleCase, SaltReturnAssertsMixin):
- def setUp(self):
- self.state_name = 'test_sdb_env'
- self.state_file_name = self.state_name + '.sls'
- self.state_file_set_var = os.path.join(STATE_DIR, self.state_file_name)
- with salt.utils.files.fopen(self.state_file_set_var, 'w') as wfh:
- wfh.write(textwrap.dedent('''\
- set some env var:
- cmd.run:
- - name: echo {{ salt['sdb.set']('sdb://osenv/foo', 'bar') }}
- - order: 1
- {% if salt['sdb.get']('sdb://osenv/foo') == 'bar' %}
- always-changes-and-succeeds:
- test.succeed_with_changes:
- - name: foo
- {% else %}
- always-changes-and-fails:
- test.fail_with_changes:
- - name: foo
- {% endif %}
- '''))
- def tearDown(self):
- os.remove(self.state_file_set_var)
- def test_env_module_sets_key(self):
- state_key = 'test_|-always-changes-and-succeeds_|-foo_|-succeed_with_changes'
- ret = self.run_function('state.sls', [self.state_name])
- self.assertTrue(ret[state_key]['result'])
|