OSINT / tests /test_seeding.py
ritishshrirao's picture
Add dashboard, Update reward, Multi-agent orchestration
ce675d4
from osint_env.domain.models import (
EnvironmentConfig,
NodeType,
SeedEdgeSpec,
SeedNodeSpec,
SeedQuestionSpec,
SeedingConfig,
)
from osint_env.env.environment import OSINTEnvironment
def test_environment_includes_seeded_graph_and_questions():
seeding = SeedingConfig(
seeded_nodes=[
SeedNodeSpec(node_id="alias_seed_001", node_type=NodeType.ALIAS, attrs={"handle": "@seed001"}),
SeedNodeSpec(
node_id="user_seed_001",
node_type=NodeType.USER,
attrs={"name": "Seed User", "org": "Helios Labs", "location": "Pune"},
),
],
seeded_edges=[SeedEdgeSpec(src="alias_seed_001", rel="alias_of", dst="user_seed_001")],
seeded_questions=[
SeedQuestionSpec(
question="Which canonical user owns alias alias_seed_001?",
answer="user_seed_001",
task_type="identity_resolution",
supporting_edges=[SeedEdgeSpec(src="alias_seed_001", rel="alias_of", dst="user_seed_001")],
)
],
llm_generate_remaining_graph=False,
llm_generate_remaining_tasks=False,
llm_generated_edge_budget=0,
llm_generated_task_budget=0,
)
env = OSINTEnvironment(EnvironmentConfig(seed=33, n_users=12, seeding=seeding))
assert "alias_seed_001" in env.graph.nodes
assert any(edge.src == "alias_seed_001" and edge.rel == "alias_of" and edge.dst == "user_seed_001" for edge in env.graph.edges)
assert any("alias_seed_001" in task.question for task in env.tasks)