Spaces:
Sleeping
Sleeping
| import gymnasium as gym | |
| import logging | |
| import os | |
| import playwright.sync_api | |
| import pytest | |
| from tenacity import retry, stop_after_attempt, retry_if_exception_type | |
| # register gym environments | |
| import browsergym.webarena | |
| __SLOW_MO = 1000 if "DISPLAY_BROWSER" in os.environ else None | |
| __HEADLESS = False if "DISPLAY_BROWSER" in os.environ else True | |
| INFEAS_TASK_IDS = [101, 115, 166] | |
| FEAS_TASK_IDS = [165, 187, 199] | |
| def test_infeasible(task_id, infeasible): | |
| env = gym.make( | |
| f"browsergym/webarena.{task_id}", | |
| headless=__HEADLESS, | |
| slow_mo=__SLOW_MO, | |
| ) | |
| obs, info = env.reset() | |
| action = 'report_infeasible("Unachievable task.")' | |
| obs, reward, term, trunc, info = env.step(action) | |
| if infeasible: | |
| assert term == True and reward == 1.0 | |
| else: | |
| assert term == True and reward == 0.0 | |
| env.close() | |