MCPcopy Create free account
hub / github.com/HKUDS/ClawWork / test_task_manager_loading

Function test_task_manager_loading

scripts/test_task_value_integration.py:22–69  ·  view source on GitHub ↗

Test that TaskManager loads and applies task values correctly

()

Source from the content-addressed store, hash-verified

20
21
22def test_task_manager_loading():
23 """Test that TaskManager loads and applies task values correctly"""
24 print("="*60)
25 print("TEST 1: TaskManager Task Value Loading")
26 print("="*60)
27
28 # Initialize TaskManager with task values
29 task_manager = TaskManager(
30 task_source_type="parquet",
31 task_source_path="./gdpval",
32 task_values_path="./scripts/task_value_estimates/task_values.jsonl",
33 default_max_payment=50.0
34 )
35
36 # Load tasks
37 num_tasks = task_manager.load_tasks()
38 print(f"\n✅ Loaded {num_tasks} tasks")
39
40 # Check task values loaded
41 if task_manager.task_values:
42 print(f"✅ Task values loaded: {len(task_manager.task_values)} entries")
43 values = list(task_manager.task_values.values())
44 print(f" Price range: ${min(values):.2f} - ${max(values):.2f}")
45 print(f" Average: ${sum(values)/len(values):.2f}")
46 else:
47 print("❌ No task values loaded!")
48 return False
49
50 # Select a task and verify it has max_payment
51 task = task_manager.select_daily_task(date="2025-01-20")
52
53 if 'max_payment' in task:
54 print(f"\n✅ Task has max_payment field: ${task['max_payment']:.2f}")
55 print(f" Task ID: {task['task_id']}")
56 print(f" Occupation: {task['occupation']}")
57
58 # Verify it matches the loaded value
59 expected = task_manager.task_values.get(task['task_id'], 50.0)
60 if abs(task['max_payment'] - expected) < 0.01:
61 print(f"✅ Payment matches expected value")
62 else:
63 print(f"❌ Payment mismatch: got ${task['max_payment']:.2f}, expected ${expected:.2f}")
64 return False
65 else:
66 print("❌ Task missing max_payment field!")
67 return False
68
69 return True
70
71
72def test_fallback_behavior():

Callers

nothing calls this directly

Calls 3

load_tasksMethod · 0.95
select_daily_taskMethod · 0.95
TaskManagerClass · 0.90

Tested by

no test coverage detected