MCPcopy Index your code
hub / github.com/ray-project/ray / test_runtime_env_interface

Function test_runtime_env_interface

python/ray/tests/unit/test_runtime_env.py:395–536  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

393
394
395def test_runtime_env_interface():
396 # Test the interface related to working_dir
397 default_working_dir = "s3://bucket/key.zip"
398 modify_working_dir = "s3://bucket/key_A.zip"
399 runtime_env = RuntimeEnv(working_dir=default_working_dir)
400 runtime_env_dict = runtime_env.to_dict()
401 assert runtime_env.working_dir_uri() == default_working_dir
402 runtime_env["working_dir"] = modify_working_dir
403 runtime_env_dict["working_dir"] = modify_working_dir
404 assert runtime_env.working_dir_uri() == modify_working_dir
405 assert runtime_env.to_dict() == runtime_env_dict
406
407 runtime_env.pop("working_dir")
408 assert runtime_env.to_dict() == {}
409
410 # Test the interface related to py_modules
411 init_py_modules = ["s3://bucket/key_1.zip", "s3://bucket/key_2.zip"]
412 addition_py_modules = ["s3://bucket/key_3.zip", "s3://bucket/key_4.zip"]
413 runtime_env = RuntimeEnv(py_modules=init_py_modules)
414 runtime_env_dict = runtime_env.to_dict()
415 assert set(runtime_env.py_modules_uris()) == set(init_py_modules)
416 runtime_env["py_modules"].extend(addition_py_modules)
417 runtime_env_dict["py_modules"].extend(addition_py_modules)
418 assert set(runtime_env.py_modules_uris()) == set(
419 init_py_modules + addition_py_modules
420 )
421 assert runtime_env.to_dict() == runtime_env_dict
422
423 runtime_env.pop("py_modules")
424 assert runtime_env.to_dict() == {}
425
426 # Test the interface related to env_vars
427 init_env_vars = {"A": "a", "B": "b"}
428 update_env_vars = {"C": "c"}
429 runtime_env = RuntimeEnv(env_vars=init_env_vars)
430 runtime_env_dict = runtime_env.to_dict()
431 runtime_env["env_vars"].update(update_env_vars)
432 runtime_env_dict["env_vars"].update(update_env_vars)
433 init_env_vars_copy = init_env_vars.copy()
434 init_env_vars_copy.update(update_env_vars)
435 assert runtime_env["env_vars"] == init_env_vars_copy
436 assert runtime_env_dict == runtime_env.to_dict()
437
438 runtime_env.pop("env_vars")
439 assert runtime_env.to_dict() == {}
440
441 # Test the interface related to conda
442 conda_name = "conda"
443 modify_conda_name = "conda_A"
444 conda_config = {"dependencies": ["dep1", "dep2"]}
445 runtime_env = RuntimeEnv(conda=conda_name)
446 runtime_env_dict = runtime_env.to_dict()
447 assert runtime_env.has_conda()
448 assert runtime_env.conda_env_name() == conda_name
449 assert runtime_env.conda_config() is None
450 runtime_env["conda"] = modify_conda_name
451 runtime_env_dict["conda"] = modify_conda_name
452 assert runtime_env_dict == runtime_env.to_dict()

Callers

nothing calls this directly

Calls 15

to_dictMethod · 0.95
working_dir_uriMethod · 0.95
py_modules_urisMethod · 0.95
has_condaMethod · 0.95
conda_env_nameMethod · 0.95
conda_configMethod · 0.95
has_pipMethod · 0.95
pip_configMethod · 0.95
virtualenv_nameMethod · 0.95
serializeMethod · 0.95
has_py_containerMethod · 0.95
py_container_imageMethod · 0.95

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…