# 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 from __future__ import (absolute_import, division, print_function) __metaclass__ = type from ansible_collections.community.general.tests.unit.compat import mock from ansible_collections.community.general.tests.unit.compat import unittest from ansible_collections.community.general.plugins.modules.packaging.os import apk class TestApkQueryLatest(unittest.TestCase): def setUp(self): self.module_names = [ 'bash', 'g++', ] @mock.patch('ansible_collections.community.general.plugins.modules.packaging.os.apk.AnsibleModule') def test_not_latest(self, mock_module): apk.APK_PATH = "" for module_name in self.module_names: command_output = module_name + '-2.0.0-r1 < 3.0.0-r2 ' mock_module.run_command.return_value = (0, command_output, None) command_result = apk.query_latest(mock_module, module_name) self.assertFalse(command_result) @mock.patch('ansible_collections.community.general.plugins.modules.packaging.os.apk.AnsibleModule') def test_latest(self, mock_module): apk.APK_PATH = "" for module_name in self.module_names: command_output = module_name + '-2.0.0-r1 = 2.0.0-r1 ' mock_module.run_command.return_value = (0, command_output, None) command_result = apk.query_latest(mock_module, module_name) self.assertTrue(command_result)