# -*- coding: utf-8 -*- """ Integration tests for the mac_desktop execution module. """ from __future__ import absolute_import, print_function, unicode_literals from salt.ext import six from tests.support.case import ModuleCase from tests.support.helpers import destructiveTest, runs_on, skip_if_not_root, slowTest @destructiveTest @skip_if_not_root @runs_on(kernel="Darwin") class MacDesktopTestCase(ModuleCase): """ Integration tests for the mac_desktop module. """ def test_get_output_volume(self): """ Tests the return of get_output_volume. """ ret = self.run_function("desktop.get_output_volume") self.assertIsNotNone(ret) @slowTest def test_set_output_volume(self): """ Tests the return of set_output_volume. """ current_vol = self.run_function("desktop.get_output_volume") to_set = 10 if current_vol == six.text_type(to_set): to_set += 2 new_vol = self.run_function( "desktop.set_output_volume", [six.text_type(to_set)] ) check_vol = self.run_function("desktop.get_output_volume") self.assertEqual(new_vol, check_vol) # Set volume back to what it was before self.run_function("desktop.set_output_volume", [current_vol]) def test_screensaver(self): """ Tests the return of the screensaver function. """ self.assertTrue(self.run_function("desktop.screensaver")) def test_lock(self): """ Tests the return of the lock function. """ self.assertTrue(self.run_function("desktop.lock")) @slowTest def test_say(self): """ Tests the return of the say function. """ self.assertTrue(self.run_function("desktop.say", ["hello", "world"]))