Интегрирован wesp в сайт
CI / quality (push) Canceled after 0s

This commit is contained in:
влад
2026-07-17 12:57:18 +03:00
parent 5dfa06ddbe
commit 355c0ef9f1
883 changed files with 194576 additions and 177 deletions
+66
View File
@@ -0,0 +1,66 @@
"""СВ % WESP → г/кг и пересчёт энергии при битом EAV."""
from app.lab.calc.engine import calculate_ration
from app.lab.nutrient_schema import resolve_sv_g_per_kg
from app.lab.services.component_nutrients import _repair_for_ration_calc
def test_resolve_sv_from_wesp_percent():
assert resolve_sv_g_per_kg({"СВ": 5.0}, 88.7) == 887.0
assert resolve_sv_g_per_kg({}, 85.0) == 850.0
assert resolve_sv_g_per_kg({"СВ": 880.0}, 88.0) == 880.0
def test_repair_negative_energy():
repaired = _repair_for_ration_calc(
{
"СВ": 5.0,
"Сыр. Протеин": 78.0,
"Сырая клетч": 328.0,
"Сырой жир": 22.0,
"ОЭ-КРС": -0.92,
"ЧЭЛ- КРС": -0.31,
},
87.2,
)
assert repaired["СВ"] == 872.0
assert repaired["ОЭ-КРС"] > 0
assert repaired["ЧЭЛ- КРС"] > 0
def test_fill_missing_derived_preserves_pinned_energy():
repaired = _repair_for_ration_calc(
{
"Сыр. Протеин": 78.0,
"Сырая клетч": 328.0,
"Сырой жир": 22.0,
"ОЭ-КРС": 5.9,
"ЧЭЛ- КРС": 3.4,
"уСП": 62.0,
},
85.0,
)
assert repaired["ОЭ-КРС"] == 5.9
assert repaired["ЧЭЛ- КРС"] == 3.4
assert repaired["уСП"] == 62.0
assert repaired["Перевар Орг Вещ"] > 0
assert repaired["Переварим БЭВ"] > 0
def test_hay_without_eav_sv_uses_percent():
result = calculate_ration(
"DAIRY",
[
{
"daily_kg": 62,
"in_ration": True,
"in_compound": False,
"dry_matter": 88.7,
"nutrients": {"Сыр. Протеин": 78, "ОЭ-КРС": 5.9, "ЧЭЛ- КРС": 3.4},
}
],
{},
heads_per_trip=62,
)
dm = next(i for i in result["indicators"] if i["label"] == "Сухое вещество")
assert dm["content"] == 887.0