agent-harness / tests /test_llm_localization.py
cuber12's picture
Publish agent harness research code and paper artifacts
d61821a verified
Raw
History Blame Contribute Delete
993 Bytes
from __future__ import annotations
import unittest
from agent_harness.llm_localization import LocalizationError, parse_selection
class LocalizationParsingTests(unittest.TestCase):
def test_parses_valid_selection(self) -> None:
response = {
"choices": [
{
"message": {
"content": '{"files":["shells/abstract.go"],"reasoning":"checkout"}'
}
}
]
}
value = parse_selection(response, {"shells/abstract.go"})
self.assertEqual(value["files"], ["shells/abstract.go"])
def test_rejects_path_outside_candidates(self) -> None:
response = {
"choices": [
{"message": {"content": '{"files":["gold.go"],"reasoning":"guess"}'}}
]
}
with self.assertRaises(LocalizationError):
parse_selection(response, {"candidate.go"})
if __name__ == "__main__":
unittest.main()