--- a +++ b/tests/test_requirements.py @@ -0,0 +1,27 @@ +"""Test availability of required packages.""" + +import unittest +import os +from pathlib import Path + +import pkg_resources + +parent_path = Path(__file__).parent.parent +requirements_path_os = os.path.join(parent_path,"requirements.txt") +print("Parent Path = {}".format(parent_path)) +print("Requirements Path = {}".format(requirements_path_os)) +_REQUIREMENTS_PATH = Path(requirements_path_os) + + +class TestRequirements(unittest.TestCase): + """Test availability of required packages.""" + + def test_requirements(self): + """Test that each required package is available.""" + # Ref: https://stackoverflow.com/a/45474387/ + requirements = pkg_resources.parse_requirements(_REQUIREMENTS_PATH.open()) + for requirement in requirements: + requirement = str(requirement) + print("Check Requirement ==> {}".format(requirement)) + with self.subTest(requirement=requirement): + pkg_resources.require(requirement)