salt/tests/integration/modules/test_config.py

102 lines
3.1 KiB
Python

# -*- coding: utf-8 -*-
'''
Validate the config system
'''
# Import Python libs
from __future__ import absolute_import
# Import Salt Testing libs
from tests.support.case import ModuleCase
class ConfigTest(ModuleCase):
'''
Test config routines
'''
def test_valid_file_proto(self):
'''
test config.valid_file_proto
'''
self.assertTrue(
self.run_function('config.valid_fileproto', ['salt://']))
self.assertTrue(
self.run_function('config.valid_fileproto', ['http://']))
self.assertTrue(
self.run_function('config.valid_fileproto', ['https://']))
self.assertTrue(
self.run_function('config.valid_fileproto', ['ftp://']))
self.assertFalse(
self.run_function('config.valid_fileproto', ['cheese://']))
def test_backup_mode(self):
'''
test config.backup_mode
'''
self.assertEqual(
self.run_function('config.backup_mode', ['minion']), 'minion')
def test_manage_mode(self):
'''
test config.manage_mode
'''
# This function is generally only used with cross calls, the yaml
# interpreter is breaking it for remote calls
# The correct standard is the four digit form.
self.assertEqual(
self.run_function('config.manage_mode', ['"775"']), '0775')
self.assertEqual(
self.run_function('config.manage_mode', ['"1775"']), '1775')
self.assertEqual(
self.run_function('config.manage_mode', ['"0775"']), '0775')
self.assertEqual(
self.run_function('config.manage_mode', ['"01775"']), '1775')
self.assertEqual(
self.run_function('config.manage_mode', ['"0"']), '0000')
self.assertEqual(
self.run_function('config.manage_mode', ['775']), '0775')
self.assertEqual(
self.run_function('config.manage_mode', ['1775']), '1775')
self.assertEqual(
self.run_function('config.manage_mode', ['0']), '0000')
def test_option(self):
'''
test config.option
'''
# Minion opt
self.assertEqual(
self.run_function(
'config.option',
['master_port']),
64506)
# pillar conf opt
self.assertEqual(
self.run_function(
'config.option',
['ext_spam']),
'eggs')
def test_get(self):
'''
Test option.get
'''
# Check pillar get
self.assertEqual(
self.run_function(
'config.get',
['level1:level2']),
'foo')
# Check master config
self.assertEqual(
self.run_function(
'config.get',
['config_opt:layer2']),
'kosher')
# Check minion config
self.assertEqual(
self.run_function(
'config.get',
['config_test:spam']),
'eggs')