Compare commits

...

4 Commits

3 changed files with 44 additions and 0 deletions

32
.github/workflows/pytest.yml vendored Normal file
View File

@ -0,0 +1,32 @@
name: Run pytest
on:
push:
branches:
# - master
- release
pull_request:
branches:
# - master
- release
jobs:
pytest:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: '3.x'
- name: Install package dependencies
run: pip install .[testing]
- name: Install Metaworld
run: pip install metaworld@git+https://github.com/Farama-Foundation/Metaworld.git@d155d0051630bb365ea6a824e02c66c068947439#egg=metaworld
- name: Run pytest
run: pytest

View File

@ -21,15 +21,21 @@ GYM_MP_IDS = fancy_gym.ALL_DMC_MOVEMENT_PRIMITIVE_ENVIRONMENTS['all']
SEED = 1
known_fail_functionality = ['LunarLander-v2', 'Blackjack-v1', 'CliffWalking-v0']
@pytest.mark.parametrize('env_id', GYM_IDS)
def test_step_gym_functionality(env_id: str):
"""Tests that step environments run without errors using random actions."""
if env_id in known_fail_functionality:
pytest.xfail(f"{env_id} is expected to fail the functionality test")
run_env(env_id)
known_fail_deteminism = ['LunarLanderContinuous-v2', 'CliffWalking-v0']
@pytest.mark.parametrize('env_id', GYM_IDS)
def test_step_gym_determinism(env_id: str):
"""Tests that for step environments identical seeds produce identical trajectories."""
if env_id in known_fail_deteminism:
pytest.xfail(f"{env_id} is expected to fail the determinism test")
run_env_determinism(env_id, SEED)

View File

@ -15,15 +15,21 @@ DMC_MP_IDS = fancy_gym.ALL_DMC_MOVEMENT_PRIMITIVE_ENVIRONMENTS['all']
SEED = 1
known_fail_functionality = []
@pytest.mark.parametrize('env_id', DMC_IDS)
def test_step_dm_control_functionality(env_id: str):
"""Tests that suite step environments run without errors using random actions."""
if env_id in known_fail_functionality:
pytest.xfail(f"{env_id} is expected to fail the functionality test")
run_env(env_id, 5000, wrappers=[gym.wrappers.FlattenObservation])
known_fail_deteminism = ['dm_control/CmuHumanoidMazeForage-v0', 'dm_control/CmuHumanoidHeterogeneousForage-v0', 'dm_control/RodentMazeForage-v0', 'dm_control/RodentTwoTouch-v0']
@pytest.mark.parametrize('env_id', DMC_IDS)
def test_step_dm_control_determinism(env_id: str):
"""Tests that for step environments identical seeds produce identical trajectories."""
if env_id in known_fail_deteminism:
pytest.xfail(f"{env_id} is expected to fail the determinism test")
run_env_determinism(env_id, SEED, 5000, wrappers=[gym.wrappers.FlattenObservation])