32 lines
724 B
Python
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
|