dji_simulator/tests/test_osd_generator.py

32 lines
724 B
Python

import pytest
from src.core.osd_generator import OsdGenerator
def test_initial_state():
gen = OsdGenerator()
data = gen.get_osd_data()
assert data["battery_percent"] == 100
assert data["height"] == 0.0
assert not gen.is_flying
def test_flight_update():
gen = OsdGenerator()
gen.start_fly()
assert gen.is_flying
assert gen.altitude > 0
# Update for 30 seconds
gen.update(dt=30.0)
data = gen.get_osd_data()
# Battery should have dropped approx 1%
assert data["battery_percent"] <= 99
def test_charging_on_ground():
gen = OsdGenerator()
gen.battery = 50.0
gen.is_flying = False
gen.update(dt=10.0)
assert gen.battery > 50.0