def handle(self): from poetry.utils.env import EnvManager poetry = self.poetry manager = EnvManager(poetry.config) venv = manager.remove(self.argument("python"), poetry.file.parent) self.line("Deleted virtualenv: <comment>{}</comment>".format(venv.path))
def test_remove_by_name( tmp_dir: str, manager: EnvManager, poetry: "Poetry", config: "Config", mocker: "MockerFixture", ): config.merge({"virtualenvs": {"path": str(tmp_dir)}}) venv_name = manager.generate_env_name("simple-project", str(poetry.file.parent)) (Path(tmp_dir) / f"{venv_name}-py3.7").mkdir() (Path(tmp_dir) / f"{venv_name}-py3.6").mkdir() mocker.patch( "subprocess.check_output", side_effect=check_output_wrapper(Version.parse("3.6.6")), ) venv = manager.remove(f"{venv_name}-py3.6") assert (Path(tmp_dir) / f"{venv_name}-py3.6") == venv.path assert not (Path(tmp_dir) / f"{venv_name}-py3.6").exists()