12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394 |
- # -*- coding: utf-8 -*-
- # Import Python libs
- from __future__ import absolute_import, unicode_literals, print_function
- # Import Salt Libs
- import salt.states.win_powercfg as powercfg
- # Import Salt Testing Libs
- from tests.support.mixins import LoaderModuleMockMixin
- from tests.support.unit import TestCase
- from tests.support.mock import (
- MagicMock,
- patch
- )
- class PowerCfgTestCase(TestCase, LoaderModuleMockMixin):
- '''
- Validate the powercfg state
- '''
- def setup_loader_modules(self):
- return {powercfg: {}}
- def test_set_monitor(self):
- '''
- Test to make sure we can set the monitor timeout value
- '''
- ret = {
- 'changes': {
- 'monitor': {
- 'ac': {
- 'new': 0,
- 'old': 45
- }
- }
- },
- 'comment': 'Monitor timeout on AC power set to 0',
- 'name': 'monitor',
- 'result': True}
- get_monitor_side_effect = MagicMock(side_effect=[{"ac": 45, "dc": 22},
- {"ac": 0, "dc": 22}])
- with patch.dict(powercfg.__salt__,
- {"powercfg.get_monitor_timeout": get_monitor_side_effect,
- "powercfg.set_monitor_timeout": MagicMock(return_value=True)}):
- with patch.dict(powercfg.__opts__, {"test": False}):
- self.assertEqual(powercfg.set_timeout("monitor", 0), ret)
- def test_set_monitor_already_set(self):
- '''
- Test to make sure we can set the monitor timeout value
- '''
- ret = {'changes': {},
- 'comment': 'Monitor timeout on AC power is already set to 0',
- 'name': 'monitor',
- 'result': True}
- monitor_val = MagicMock(return_value={"ac": 0, "dc": 0})
- with patch.dict(powercfg.__salt__, {"powercfg.get_monitor_timeout": monitor_val}):
- self.assertEqual(powercfg.set_timeout("monitor", 0), ret)
- def test_set_monitor_test_true_with_change(self):
- '''
- Test to make sure set monitor works correctly with test=True with
- changes
- '''
- ret = {'changes': {},
- 'comment': 'Monitor timeout on AC power will be set to 0',
- 'name': 'monitor',
- 'result': None}
- get_monitor_return_value = MagicMock(return_value={"ac": 45, "dc": 22})
- with patch.dict(powercfg.__salt__, {"powercfg.get_monitor_timeout": get_monitor_return_value}):
- with patch.dict(powercfg.__opts__, {"test": True}):
- self.assertEqual(powercfg.set_timeout("monitor", 0), ret)
- def test_fail_invalid_setting(self):
- '''
- Test to make sure we can set the monitor timeout value
- '''
- ret = {'changes': {},
- 'comment': '"fakesetting" is not a valid setting',
- 'name': 'fakesetting',
- 'result': False}
- self.assertEqual(powercfg.set_timeout("fakesetting", 0), ret)
- def test_fail_invalid_power(self):
- '''
- Test to make sure we can set the monitor timeout value
- '''
- ret = {'changes': {},
- 'comment': '"fakepower" is not a power type',
- 'name': 'monitor',
- 'result': False}
- self.assertEqual(powercfg.set_timeout("monitor", 0, power="fakepower"),
- ret)
|