From d56b0929686e0b4449e7b4b78bf590186eee1cdc Mon Sep 17 00:00:00 2001 From: Manuel Schmid Date: Thu, 6 Jun 2024 19:27:03 +0200 Subject: [PATCH] feat: add tests --- tests/test_extra_utils.py | 74 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 74 insertions(+) create mode 100644 tests/test_extra_utils.py diff --git a/tests/test_extra_utils.py b/tests/test_extra_utils.py new file mode 100644 index 00000000..a849aa16 --- /dev/null +++ b/tests/test_extra_utils.py @@ -0,0 +1,74 @@ +import numbers +import os +import unittest + +import modules.flags +from modules import extra_utils + + +class TestUtils(unittest.TestCase): + def test_try_eval_env_var(self): + test_cases = [ + { + "input": ("foo", str), + "output": "foo" + }, + { + "input": ("1", int), + "output": 1 + }, + { + "input": ("1.0", float), + "output": 1.0 + }, + { + "input": ("1", numbers.Number), + "output": 1 + }, + { + "input": ("1.0", numbers.Number), + "output": 1.0 + }, + { + "input": ("true", bool), + "output": True + }, + { + "input": ("True", bool), + "output": True + }, + { + "input": ("false", bool), + "output": False + }, + { + "input": ("False", bool), + "output": False + }, + { + "input": ("True", str), + "output": "True" + }, + { + "input": ("False", str), + "output": "False" + }, + { + "input": ("['a', 'b', 'c']", list), + "output": ['a', 'b', 'c'] + }, + { + "input": ("{'a':1}", dict), + "output": {'a': 1} + }, + { + "input": ("('foo', 1)", tuple), + "output": ('foo', 1) + } + ] + + for test in test_cases: + value, expected_type = test["input"] + expected = test["output"] + actual = extra_utils.try_eval_env_var(value, expected_type) + self.assertEqual(expected, actual)