salt/tests/unit/beacons/test_status.py
Erik Johnson f72bbc5036
Rename beacon unit test modules to conform with naming convention
Also consolidate pyroute2 network_settings tests into network_settings
beacon test module.
2018-08-14 13:53:29 -05:00

81 lines
2.1 KiB
Python

# -*- coding: utf-8 -*-
'''
:codeauthor: Pedro Algarvio (pedro@algarvio.me)
:copyright: Copyright 2017 by the SaltStack Team, see AUTHORS for more details.
tests.unit.beacons.test_status
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Status beacon test cases
'''
# Python libs
from __future__ import absolute_import
import sys
# Salt libs
import salt.config
import salt.loader
from salt.beacons import status
import salt.modules.status as status_module
# Salt testing libs
from tests.support.unit import TestCase
from tests.support.mixins import LoaderModuleMockMixin
class StatusBeaconTestCase(TestCase, LoaderModuleMockMixin):
'''
Test case for salt.beacons.status
'''
def setup_loader_modules(self):
opts = salt.config.DEFAULT_MINION_OPTS
module_globals = {
'__opts__': opts,
'__salt__': 'autoload',
'__context__': {},
'__grains__': {'kernel': 'Linux'}
}
return {
status: module_globals,
status_module: module_globals
}
def test_empty_config(self, *args, **kwargs):
config = []
ret = status.validate(config)
self.assertEqual(ret, (True, 'Valid beacon configuration'))
ret = status.beacon(config)
if sys.platform.startswith('win'):
expected = []
else:
expected = sorted(['loadavg', 'meminfo', 'cpustats', 'vmstats', 'time'])
self.assertEqual(sorted(list(ret[0]['data'])), expected)
def test_deprecated_dict_config(self):
config = {'time': ['all']}
ret = status.validate(config)
self.assertEqual(ret, (False, 'Configuration for status beacon must be a list.'))
def test_list_config(self):
config = [{'time': ['all']}]
ret = status.validate(config)
self.assertEqual(ret, (True, 'Valid beacon configuration'))
ret = status.beacon(config)
if sys.platform.startswith('win'):
expected = []
else:
expected = ['time']
self.assertEqual(list(ret[0]['data']), expected)