import os import shutil import traceback import unittest from unittests_cli.constants import PLAYGROUND_PATH class CommandTestCase(unittest.TestCase): _skip_tear_down = False _cwd = os.getcwd() def __init__(self, method_name: str): unittest.TestCase.__init__(self, method_name) @classmethod def setUpClass(cls): try: if os.path.exists(PLAYGROUND_PATH): shutil.rmtree(os.path.abspath(os.path.join(PLAYGROUND_PATH))) if not os.path.exists(PLAYGROUND_PATH): os.makedirs(PLAYGROUND_PATH) os.chdir(PLAYGROUND_PATH) except Exception as e: print(f"Setup of {__name__} failed: {traceback.format_exc()}") def setUp(self): os.chdir(PLAYGROUND_PATH) @classmethod def tearDownClass(cls): if cls._skip_tear_down: return try: os.chdir(cls._cwd) if os.path.exists(PLAYGROUND_PATH): shutil.rmtree(os.path.abspath(os.path.join(PLAYGROUND_PATH))) except Exception as e: print(f"Cleanup of {__name__} failed: {traceback.format_exc()}")