41 Zeilen
1.4 KiB
Python
41 Zeilen
1.4 KiB
Python
import os
|
|
import unittest
|
|
|
|
try: # pragma: nocover
|
|
from ansible_collections.sebastian.systemd.plugins.module_utils.generic import \
|
|
Types
|
|
except ImportError: # pragma: nocover
|
|
import sys
|
|
|
|
sys.path.append("plugins/module_utils")
|
|
from generic import Types
|
|
|
|
|
|
class TestTypes(unittest.TestCase):
|
|
"""tests the Types class"""
|
|
|
|
def testsimpletype(self):
|
|
"""this tests if an simple type is correctly build"""
|
|
output = Types.str(required=True, help="test", choices=("a", "1"), default="1")
|
|
self.assertIn("type", output)
|
|
self.assertIn("required", output)
|
|
self.assertIn("default", output)
|
|
self.assertIn("choices", output)
|
|
self.assertEquals(output["type"], "str")
|
|
self.assertEquals(Types.str.__name__, "str")
|
|
self.assertEquals(output["required"], True)
|
|
self.assertEquals(output["default"], "1")
|
|
self.assertTupleEqual(output["choices"], ("a", "1"))
|
|
Types.str()
|
|
|
|
def testlisttype(self):
|
|
"""this tests if the special type list is correctly build"""
|
|
output = Types.list(str)
|
|
Types.list("str")
|
|
self.assertIn("type", output)
|
|
self.assertIn("elements", output)
|
|
self.assertIn("required", output)
|
|
self.assertEquals(output["type"], "list")
|
|
self.assertEquals(output["required"], False)
|
|
self.assertEquals(output["elements"], "str")
|