setup-pdm/test.py
Timothée Mazzucotelli 6f13d8d292
feat: Fallback on prerelease like setup-python does (#35)
* feat: Fallback on prerelease like setup-python does

* fixup! feat: Fallback on prerelease like setup-python does

* fixup! feat: Fallback on prerelease like setup-python does

* fixup! feat: Fallback on prerelease like setup-python does

* fixup! feat: Fallback on prerelease like setup-python does

* fixup! feat: Fallback on prerelease like setup-python does
2023-06-21 17:08:31 +08:00

44 lines
1.1 KiB
Python

import os
import sys
import unittest
import importlib
PACKAGE_MAP = {
"3.6": "idna",
"3.7": "chardet",
"3.8": "urllib3",
"3.9": "certifi",
"3.10": "pytz",
"3.11": "setuptools",
"3.12": "six",
}
class TestActionSuite(unittest.TestCase):
def test_check_python_version(self):
self.assertEqual(
".".join(map(str, sys.version_info[:2])),
".".join(os.getenv("PYTHON_VERSION").split(".")[:2]),
)
def test_check_dependencies(self):
python_version = ".".join(map(str, sys.version_info[:2]))
for package in PACKAGE_MAP.values():
if package != PACKAGE_MAP[python_version]:
try:
print(importlib.import_module(package))
except ImportError:
pass
self.assertRaises(
ModuleNotFoundError,
importlib.import_module,
package,
)
else:
importlib.import_module(package)
if __name__ == "__main__":
unittest.main()