MCPcopy
hub / github.com/pex-tool/pex / test_venv_pex_interpreter_special_modes

Function test_venv_pex_interpreter_special_modes

tests/tools/commands/test_venv.py:295–340  ·  view source on GitHub ↗
(create_pex_venv)

Source from the content-addressed store, hash-verified

293 ),
294)
295def test_venv_pex_interpreter_special_modes(create_pex_venv):
296 # type: (CreatePexVenv) -> None
297 venv = create_pex_venv()
298
299 # special mode execute module: -m module
300 returncode, stdout, stderr = execute_venv_pex_interpreter(venv, extra_args=["-m"])
301 assert 2 == returncode, stderr
302 assert "" == stdout
303
304 returncode, stdout, stderr = execute_venv_pex_interpreter(
305 venv, extra_args=["-m", "fabric", "--version"]
306 )
307 assert 0 == returncode, stderr
308 versions = parse_fabric_version_output(stdout)
309 assert FABRIC_VERSION == versions["Fabric"]
310
311 # special mode execute code string: -c <str>
312 returncode, stdout, stderr = execute_venv_pex_interpreter(venv, extra_args=["-c"])
313 assert 2 == returncode, stderr
314 assert "" == stdout
315
316 fabric_file_code = "import fabric, os; print(os.path.realpath(fabric.__file__))"
317 expected_fabric_file_path = expected_file_path(venv, "fabric")
318
319 returncode, stdout, stderr = execute_venv_pex_interpreter(
320 venv, extra_args=["-c", fabric_file_code]
321 )
322 assert 0 == returncode, stderr
323 assert expected_fabric_file_path == stdout.strip()
324
325 # special mode execute stdin: -
326 returncode, stdout, stderr = execute_venv_pex_interpreter(
327 venv, code=fabric_file_code, extra_args=["-"]
328 )
329 assert 0 == returncode, stderr
330 assert expected_fabric_file_path == stdout.strip()
331
332 # special mode execute python file: <py file name>
333 with named_temporary_file(prefix="code", suffix=".py", mode="w") as fp:
334 fp.write(fabric_file_code)
335 fp.close()
336 returncode, stdout, stderr = execute_venv_pex_interpreter(
337 venv, code=fabric_file_code, extra_args=[fp.name]
338 )
339 assert 0 == returncode, stderr
340 assert expected_fabric_file_path == stdout.strip()
341
342
343@pytest.mark.parametrize(

Callers

nothing calls this directly

Calls 8

named_temporary_fileFunction · 0.90
create_pex_venvFunction · 0.85
expected_file_pathFunction · 0.85
stripMethod · 0.80
writeMethod · 0.45
closeMethod · 0.45

Tested by

no test coverage detected