Files
microdao-daarion/tests/test_dictionary.py
Apple ef3473db21 snapshot: NODE1 production state 2026-02-09
Complete snapshot of /opt/microdao-daarion/ from NODE1 (144.76.224.179).
This represents the actual running production code that has diverged
significantly from the previous main branch.

Key changes from old main:
- Gateway (http_api.py): expanded from ~40KB to 164KB with full agent support
- Router: new /v1/agents/{id}/infer endpoint with vision + DeepSeek routing
- Behavior Policy: SOWA v2.2 (3-level: FULL/ACK/SILENT)
- Agent Registry: config/agent_registry.yml as single source of truth
- 13 agents configured (was 3)
- Memory service integration
- CrewAI teams and roles

Excluded from snapshot: venv/, .env, data/, backups, .tgz archives

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-09 08:46:46 -08:00

32 lines
1008 B
Python

import sys
from pathlib import Path
sys.path.insert(0, str(Path(__file__).resolve().parents[1] / 'packages' / 'agromatrix-tools'))
from agromatrix_tools import tool_dictionary
from agromatrix_tools.normalize import parse_quantity, convert
def test_synonym_match():
res = tool_dictionary.normalize_crop('озима пшениця', trace_id='t1')
assert res['status'] == 'ok'
assert res['normalized_id'] == 'crop_wheat_winter'
def test_fuzzy_suggestions():
res = tool_dictionary.normalize_operation('посив', trace_id='t2')
assert res['suggestions']
def test_pending_unknown():
res = tool_dictionary.normalize_field('невідоме поле', trace_id='t3')
assert res['status'] == 'pending'
def test_unit_conversion():
value, unit = parse_quantity('2,5 т')
assert unit in ['т', 't']
from_dict = 't'
to = 'kg'
# simulate conversion
assert convert(2.5, from_dict, to, [{'id':'t','to_base':{'base':'kg','factor':1000}}, {'id':'kg'}]) == 2500