AnnaMats's picture
Second Push
05c9ac2
import os
from pathlib import Path
import pytest
from mlagents_envs.registry import default_registry, UnityEnvRegistry
from mlagents_envs.registry.remote_registry_entry import RemoteRegistryEntry
BASIC_ID = "Basic"
def create_registry(tmp_dir: str) -> UnityEnvRegistry:
reg = UnityEnvRegistry()
entry = RemoteRegistryEntry(
BASIC_ID,
0.0,
"Description",
"https://storage.googleapis.com/mlagents-test-environments/1.0.0/linux/Basic.zip",
"https://storage.googleapis.com/mlagents-test-environments/1.0.0/darwin/Basic.zip",
"https://storage.googleapis.com/mlagents-test-environments/1.0.0/windows/Basic.zip",
tmp_dir=tmp_dir,
)
reg.register(entry)
return reg
@pytest.mark.parametrize("n_ports", [2])
def test_basic_in_registry(base_port: int, tmp_path: Path) -> None:
assert BASIC_ID in default_registry
os.environ["TERM"] = "xterm"
registry = create_registry(str(tmp_path))
for worker_id in range(2):
assert BASIC_ID in registry
env = registry[BASIC_ID].make(
base_port=base_port, worker_id=worker_id, no_graphics=True
)
env.reset()
env.step()
assert len(env.behavior_specs) == 1
env.close()