| from __future__ import annotations |
|
|
| import unittest |
|
|
| from support_ops_env.graders import grade_task |
| from support_ops_env.state import initial_tracking |
| from support_ops_env.tasks import get_task |
|
|
|
|
| class GraderTest(unittest.TestCase): |
| def test_incomplete_state_scores_below_perfect(self) -> None: |
| task = get_task("medium_payout_hold") |
| state = initial_tracking(task) |
| grade = grade_task(task, state) |
| self.assertLess(grade.score, 1.0) |
| self.assertGreaterEqual(grade.score, 0.0) |
|
|
| def test_queue_grader_rewards_ranking(self) -> None: |
| task = get_task("hard_queue_triage") |
| state = initial_tracking(task) |
| state.queue_order = ["T2", "T3", "T1"] |
| grade = grade_task(task, state) |
| self.assertGreater(grade.component_scores["ranking"], 0.0) |
|
|
|
|
| if __name__ == "__main__": |
| unittest.main() |
|
|