added tests for check_env function
This commit is contained in:
@@ -0,0 +1,53 @@
|
|||||||
|
"""Definition of tests for check_env function."""
|
||||||
|
|
||||||
|
import os
|
||||||
|
import unittest
|
||||||
|
|
||||||
|
from shared.utils import check_env
|
||||||
|
|
||||||
|
|
||||||
|
class TestFunctionCheckEnv(unittest.TestCase):
|
||||||
|
"""Testing function check_env."""
|
||||||
|
|
||||||
|
def setUp(self):
|
||||||
|
"""Prepare for tests."""
|
||||||
|
# define variables for test
|
||||||
|
self.not_set_env_var = 'NOT_SET_ENV_VAR'
|
||||||
|
self.set_env_var_map = {
|
||||||
|
'ENV_VAR_UPPER': 'ENV_VAR_UPPER',
|
||||||
|
'ENV_VAR_LOWER': 'env_var_lower',
|
||||||
|
}
|
||||||
|
# set env vars
|
||||||
|
for key, val in self.set_env_var_map.items():
|
||||||
|
os.environ[key] = val
|
||||||
|
|
||||||
|
def tearDown(self):
|
||||||
|
"""Clean up after tests."""
|
||||||
|
# remove env vars
|
||||||
|
for key in self.set_env_var_map:
|
||||||
|
_ = os.environ.pop(key, default=None)
|
||||||
|
|
||||||
|
def test_input_type(self):
|
||||||
|
"""Test that function fails on wrong input types."""
|
||||||
|
with self.assertRaises(AssertionError):
|
||||||
|
check_env('not_a_list')
|
||||||
|
with self.assertRaises(AssertionError):
|
||||||
|
check_env({1, 2, 3})
|
||||||
|
|
||||||
|
def test_env_var_not_set(self):
|
||||||
|
"""Test that function raises AssertionError when checking environment
|
||||||
|
variable that is not set."""
|
||||||
|
var_list = {self.not_set_env_var}
|
||||||
|
msg = f'environment variable not set: {self.not_set_env_var}'
|
||||||
|
with self.assertRaises(AssertionError, msg=msg):
|
||||||
|
check_env(var_list)
|
||||||
|
|
||||||
|
def test_env_vars_set(self):
|
||||||
|
"""Test that function does not raise any errors when environment
|
||||||
|
variables are set."""
|
||||||
|
var_list = set(self.set_env_var_map.keys())
|
||||||
|
check_env(var_list)
|
||||||
|
|
||||||
|
|
||||||
|
if __name__ == '__main__':
|
||||||
|
unittest.main()
|
||||||
Reference in New Issue
Block a user