import pytest import sys from pathlib import Path # Добавляем родительскую директорию в sys.path для импорта модулей sys.path.insert(0, str(Path(__file__).resolve().parent.parent)) from wwn_mechanics import calc_hp_max, calc_income, calc_xp_cost_to_raise # ----------------------------------------------- HP Tests ------------------------------------------------------------ def test_calc_hp_max(): """Проверяет корректность расчета максимального HP фракции на основе атрибутов.""" assert calc_hp_max(2, 4, 5) == 17 assert calc_hp_max(3, 3, 3) == 12 assert calc_hp_max(1, 1, 1) == 3 assert calc_hp_max(8, 8, 8) == 60 # ----------------------------------------------- Income Tests ------------------------------------------------------------ def test_calc_income(): """Проверяет правильность расчета дохода фракции (Treasure income) за один ход.""" assert calc_income(4, 2, 5) == 4 assert calc_income(2, 1, 1) == 2 assert calc_income(8, 7, 6) == 8 # ----------------------------------------------- XP Tests ------------------------------------------------------------ def test_calc_xp_cost_to_raise(): """Проверяет получение стоимости в XP для повышения значения атрибута.""" assert calc_xp_cost_to_raise(1) == 2 assert calc_xp_cost_to_raise(4) == 9 assert calc_xp_cost_to_raise(7) == 20 assert calc_xp_cost_to_raise(8) is None