28 lines
990 B
Python
28 lines
990 B
Python
import time
|
|
import pytest
|
|
from iqpilot.selfdrive.test.helpers import with_processes
|
|
from iqpilot.system.ui.lib import application
|
|
from iqpilot.system.ui.lib.utils import gui_style_color
|
|
|
|
|
|
@pytest.mark.linux
|
|
@with_processes(["ui"])
|
|
def test_raylib_ui():
|
|
"""Test initialization of the UI widgets is successful."""
|
|
time.sleep(1)
|
|
|
|
|
|
def test_style_colors_match_gui_style_abi(monkeypatch):
|
|
calls = []
|
|
monkeypatch.setattr(application.rl, "gui_set_style", lambda *args: calls.append(args))
|
|
monkeypatch.setattr(application, "gui_style_color", lambda color: 27)
|
|
application.GuiApplication._set_styles(None)
|
|
assert [call[2] for call in calls[-3:]] == [27, 27, 27]
|
|
|
|
|
|
def test_gui_style_color_uses_binding_value_type():
|
|
color = application.rl.Color(229, 229, 229, 255)
|
|
value_type = application.rl.ffi.typeof(application.rl.raylib.GuiSetStyle).args[2]
|
|
expected = int(application.rl.ffi.cast(value_type, application.rl.color_to_int(color)))
|
|
assert gui_style_color(color) == expected
|