2018-02-09 22:07:22 +01:00
|
|
|
|
|
|
|
# (c) 2018 Adrian Likins <alikins@redhat.com>
|
|
|
|
# Copyright (c) 2018 Ansible Project
|
|
|
|
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
|
|
|
|
# or
|
|
|
|
# Apache License v2.0 (see http://www.apache.org/licenses/LICENSE-2.0)
|
|
|
|
#
|
|
|
|
# Dual licensed so any test cases could potentially be included by the upstream project
|
|
|
|
# that module_utils/distro.py is from (https://github.com/nir0s/distro)
|
|
|
|
|
|
|
|
|
|
|
|
# Note that nir0s/distro has many more tests in it's test suite. The tests here are
|
|
|
|
# primarily for testing the vendoring.
|
|
|
|
|
2020-06-22 22:27:08 +02:00
|
|
|
from __future__ import (absolute_import, division, print_function)
|
|
|
|
__metaclass__ = type
|
|
|
|
|
2018-02-09 22:07:22 +01:00
|
|
|
from ansible.module_utils import distro
|
2019-04-08 22:26:31 +02:00
|
|
|
from ansible.module_utils.six import string_types
|
2018-02-09 22:07:22 +01:00
|
|
|
|
|
|
|
|
|
|
|
# Generic test case with minimal assertions about specific returned values.
|
|
|
|
class TestDistro():
|
|
|
|
# should run on any platform without errors, even if non-linux without any
|
|
|
|
# useful info to return
|
|
|
|
def test_info(self):
|
|
|
|
info = distro.info()
|
|
|
|
assert isinstance(info, dict), \
|
|
|
|
'distro.info() returned %s (%s) which is not a dist' % (info, type(info))
|
|
|
|
|
|
|
|
def test_linux_distribution(self):
|
|
|
|
linux_dist = distro.linux_distribution()
|
|
|
|
assert isinstance(linux_dist, tuple), \
|
|
|
|
'linux_distrution() returned %s (%s) which is not a tuple' % (linux_dist, type(linux_dist))
|
2018-02-09 22:38:11 +01:00
|
|
|
|
2019-04-08 22:26:31 +02:00
|
|
|
def test_id(self):
|
|
|
|
id = distro.id()
|
|
|
|
assert isinstance(id, string_types), 'distro.id() returned %s (%s) which is not a string' % (id, type(id))
|