File size: 1,021 Bytes
df97e68
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
"""
tests/conftest.py
Shared fixtures for all test modules.
"""
import pytest
from app.env import GovWorkflowEnv
from app.models import ActionModel, ActionType


@pytest.fixture
def easy_env():
    """Fresh GovWorkflowEnv for district_backlog_easy, seed=42."""
    env = GovWorkflowEnv(task_id="district_backlog_easy")
    env.reset(seed=42)
    return env


@pytest.fixture
def medium_env():
    env = GovWorkflowEnv(task_id="mixed_urgency_medium")
    env.reset(seed=123)
    return env


@pytest.fixture
def hard_env():
    env = GovWorkflowEnv(task_id="cross_department_hard")
    env.reset(seed=999)
    return env


@pytest.fixture
def advance_action():
    return ActionModel(action_type=ActionType.ADVANCE_TIME)


@pytest.fixture
def run_episode(easy_env, advance_action):
    """Run easy_env for 10 steps, return list of rewards."""
    rewards = []
    for _ in range(10):
        _, r, t, tr, _ = easy_env.step(advance_action)
        rewards.append(r)
        if t or tr:
            break
    return rewards