2022-07-28 09:21:23 +02:00
|
|
|
# -*- coding: utf-8 -*-
|
2022-08-13 16:56:40 +02:00
|
|
|
# Author: Alexei Znamensky (russoz@gmail.com)
|
|
|
|
# Largely adapted from test_redhat_subscription by
|
|
|
|
# Jiri Hnidek (jhnidek@redhat.com)
|
|
|
|
#
|
2022-08-08 23:23:08 +02:00
|
|
|
# Copyright (c) Alexei Znamensky (russoz@gmail.com)
|
|
|
|
# Copyright (c) Jiri Hnidek (jhnidek@redhat.com)
|
2020-11-16 12:27:00 +01:00
|
|
|
#
|
2022-08-05 12:28:29 +02:00
|
|
|
# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt)
|
|
|
|
# SPDX-License-Identifier: GPL-3.0-or-later
|
2020-11-16 12:27:00 +01:00
|
|
|
|
|
|
|
from __future__ import (absolute_import, division, print_function)
|
|
|
|
__metaclass__ = type
|
|
|
|
|
|
|
|
import json
|
2023-08-30 06:16:20 +02:00
|
|
|
from ansible_collections.community.general.plugins.modules import xfconf as module
|
2020-11-16 12:27:00 +01:00
|
|
|
|
|
|
|
import pytest
|
|
|
|
|
2023-08-30 06:16:20 +02:00
|
|
|
from .cmd_runner_test_utils import CmdRunnerTestHelper
|
2020-11-16 12:27:00 +01:00
|
|
|
|
|
|
|
|
2023-08-30 06:16:20 +02:00
|
|
|
TESTED_MODULE = module.__name__
|
|
|
|
with open("tests/unit/plugins/modules/test_xfconf.yaml", "r") as TEST_CASES:
|
2023-09-01 13:28:01 +02:00
|
|
|
helper = CmdRunnerTestHelper(test_cases=TEST_CASES)
|
2023-08-30 06:16:20 +02:00
|
|
|
patch_bin = helper.cmd_fixture
|
2020-11-16 12:27:00 +01:00
|
|
|
|
|
|
|
|
|
|
|
@pytest.mark.parametrize('patch_ansible_module, testcase',
|
2023-08-30 06:16:20 +02:00
|
|
|
helper.testcases_params, ids=helper.testcases_ids,
|
2020-11-16 12:27:00 +01:00
|
|
|
indirect=['patch_ansible_module'])
|
|
|
|
@pytest.mark.usefixtures('patch_ansible_module')
|
2023-08-30 06:16:20 +02:00
|
|
|
def test_module(mocker, capfd, patch_bin, testcase):
|
2020-11-16 12:27:00 +01:00
|
|
|
"""
|
2023-08-30 06:16:20 +02:00
|
|
|
Run unit tests for test cases listed in TEST_CASES
|
2020-11-16 12:27:00 +01:00
|
|
|
"""
|
|
|
|
|
2023-08-30 06:16:20 +02:00
|
|
|
with helper(testcase, mocker) as ctx:
|
|
|
|
# Try to run test case
|
|
|
|
with pytest.raises(SystemExit):
|
|
|
|
module.main()
|
2022-07-28 09:21:23 +02:00
|
|
|
|
2023-08-30 06:16:20 +02:00
|
|
|
out, err = capfd.readouterr()
|
|
|
|
results = json.loads(out)
|
2022-08-01 11:21:06 +02:00
|
|
|
|
2023-08-30 06:16:20 +02:00
|
|
|
ctx.check_results(results)
|