(tox_project: ToxProjectCreator, tmp_path: Path)
| 30 | |
| 31 | |
| 32 | def test_custom_work_dir(tox_project: ToxProjectCreator, tmp_path: Path) -> None: |
| 33 | project = tox_project({}) |
| 34 | |
| 35 | expected_tox_root = project.path |
| 36 | expected_work_dir = tmp_path |
| 37 | |
| 38 | outcome = project.run("c", "--workdir", str(expected_work_dir)) |
| 39 | outcome.assert_success() |
| 40 | |
| 41 | assert outcome.state.conf.options.work_dir == expected_work_dir, "should parse the --workdir argument" |
| 42 | |
| 43 | assert outcome.state.conf.core["work_dir"], f"should set work_dir to {expected_work_dir}" |
| 44 | |
| 45 | assert outcome.state.conf.core["tox_root"] == expected_tox_root, "should not update the value of tox_root" |
| 46 | assert outcome.state.conf.core["work_dir"] != (expected_tox_root / ".tox"), ( |
| 47 | "should explicitly demonstrate that tox_root and work_dir are decoupled" |
| 48 | ) |
| 49 | |
| 50 | # should update config values that depend on work_dir |
| 51 | assert outcome.state.conf.core["temp_dir"] == expected_work_dir / ".tmp" |
| 52 | |
| 53 | env_conf = outcome.state.conf.get_env("py") |
| 54 | |
| 55 | assert env_conf["env_dir"] == expected_work_dir / "py" |
| 56 | assert env_conf["env_log_dir"] == expected_work_dir / "py" / "log" |
| 57 | assert env_conf["env_tmp_dir"] == expected_work_dir / "py" / "tmp" |
| 58 | |
| 59 | |
| 60 | def test_custom_root_dir(tox_project: ToxProjectCreator, tmp_path: Path) -> None: |
nothing calls this directly
no test coverage detected
searching dependent graphs…