[stable-9] Unit tests: make set_module_args() a context manager, and remove copies of it in some tests (#9840)

Unit tests: make set_module_args() a context manager, and remove copies of it in some tests (#9838)

Make set_module_args() a context manager, and remove copies of set_module_args().

Prepares for Data Tagging.

(cherry picked from commit a1781d09dd)
This commit is contained in:
Felix Fontein 2025-03-07 07:31:42 +01:00 committed by GitHub
parent 9a6bd80613
commit 013fb9c006
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
80 changed files with 3745 additions and 3977 deletions

View file

@ -7,7 +7,7 @@ __metaclass__ = type
from ansible.module_utils import basic
from ansible_collections.community.general.tests.unit.compat.mock import patch
from ansible_collections.community.general.tests.unit.plugins.modules.utils import AnsibleExitJson, AnsibleFailJson, ModuleTestCase
from ansible_collections.community.general.tests.unit.plugins.modules.utils import set_module_args, AnsibleExitJson, AnsibleFailJson, ModuleTestCase
from ansible_collections.community.general.plugins.modules import sysupgrade
@ -48,11 +48,12 @@ class TestSysupgradeModule(ModuleTestCase):
"""
stderr = ""
with patch.object(basic.AnsibleModule, "run_command") as run_command:
run_command.return_value = (rc, stdout, stderr)
with self.assertRaises(AnsibleExitJson) as result:
self.module.main()
self.assertTrue(result.exception.args[0]['changed'])
with set_module_args({}):
with patch.object(basic.AnsibleModule, "run_command") as run_command:
run_command.return_value = (rc, stdout, stderr)
with self.assertRaises(AnsibleExitJson) as result:
self.module.main()
self.assertTrue(result.exception.args[0]['changed'])
def test_upgrade_failed(self):
""" Upgrade failed """
@ -61,9 +62,10 @@ class TestSysupgradeModule(ModuleTestCase):
stdout = ""
stderr = "sysupgrade: need root privileges"
with patch.object(basic.AnsibleModule, "run_command") as run_command_mock:
run_command_mock.return_value = (rc, stdout, stderr)
with self.assertRaises(AnsibleFailJson) as result:
self.module.main()
self.assertTrue(result.exception.args[0]['failed'])
self.assertIn('need root', result.exception.args[0]['msg'])
with set_module_args({}):
with patch.object(basic.AnsibleModule, "run_command") as run_command_mock:
run_command_mock.return_value = (rc, stdout, stderr)
with self.assertRaises(AnsibleFailJson) as result:
self.module.main()
self.assertTrue(result.exception.args[0]['failed'])
self.assertIn('need root', result.exception.args[0]['msg'])