from __future__ import annotations

import unittest

from config import HikingModelConfig
from amundsen.core.time_predictor import TimePredictor


class TimePredictorTest(unittest.TestCase):
    def test_configurable_hiking_model(self) -> None:
        predictor = TimePredictor(HikingModelConfig())

        minutes = predictor.minutes(distance_m=10_000.0, ascent_m=1_000.0, descent_m=500.0)

        self.assertEqual(minutes, 280.0)
        self.assertEqual(predictor.humanize(minutes), "4 uur 40 minuten")


if __name__ == "__main__":
    unittest.main()
