def virtualenvs_folder():
actual_virtualenvs = Path(f'/home/{getuser()}/.virtualenvs')
old_virtualenvs = set(Path(actual_virtualenvs).iterdir())
tempdir = _get_temp_dir()
old_workon = os.environ.get('WORKON_HOME')
os.environ['WORKON_HOME'] = str(tempdir)
yield tempdir
if old_workon:
os.environ['WORKON_HOME'] = old_workon
shutil.rmtree(tempdir)
new_envs = set(actual_virtualenvs.iterdir()) - set(old_virtualenvs)
if new_envs:
raise Exception('virtualenvs path mocking failed somewehere: {}, {}'.format(
new_envs, tempdir
))
评论列表
文章目录