Интегрирован wesp в сайт
CI / quality (push) Canceled after 0s

This commit is contained in:
влад
2026-07-17 12:57:18 +03:00
parent 5dfa06ddbe
commit 355c0ef9f1
883 changed files with 194576 additions and 177 deletions
+70
View File
@@ -0,0 +1,70 @@
"""Тесты полной настройки киоска Pi."""
from __future__ import annotations
import unittest
from unittest.mock import patch
from app.services.kiosk_full_setup_service import (
apply_full_kiosk_setup,
get_full_kiosk_setup_status,
)
class KioskFullSetupTests(unittest.TestCase):
@patch("app.services.kiosk_full_setup_service.get_kiosk_boot_status")
@patch("app.services.kiosk_full_setup_service.get_pi_platform_setup_status")
def test_status_ready(self, mock_pi: object, mock_kiosk: object) -> None:
mock_pi.return_value = {
"running_as_root": True,
"platform_ready": True,
}
mock_kiosk.return_value = {
"kiosk_enabled": True,
"kiosk_mode": "system_labwc",
"chromium_found": True,
"gui_user": "komton",
}
st = get_full_kiosk_setup_status({})
self.assertTrue(st["full_setup_ready"])
@patch(
"app.services.kiosk_full_setup_service.get_full_kiosk_setup_status",
return_value={"full_setup_ready": False},
)
@patch("app.services.kiosk_full_setup_service.schedule_system_reboot")
@patch("app.services.kiosk_full_setup_service.set_kiosk_boot")
@patch("app.services.kiosk_full_setup_service.apply_pi_platform_setup")
@patch("app.services.kiosk_full_setup_service._is_root", return_value=True)
def test_apply_ok(
self,
_root: object,
mock_pi: object,
mock_kiosk: object,
mock_reboot: object,
_status: object,
) -> None:
mock_pi.return_value = {"ok": True, "message": "pi ok"}
mock_kiosk.return_value = {
"ok": True,
"message": "kiosk ok",
"target_url": "http://localhost/scales",
}
mock_reboot.return_value = {"scheduled": True, "message": "reboot"}
cfg = {"WESP_FULL_SETUP_REBOOT_DELAY_SEC": 10}
r = apply_full_kiosk_setup(cfg, hide_desktop=True)
self.assertTrue(r.get("ok"))
self.assertEqual(r.get("steps_completed"), ["pi_platform", "kiosk", "reboot"])
mock_pi.assert_called_once()
mock_kiosk.assert_called_once()
mock_reboot.assert_called_once()
@patch("app.services.kiosk_full_setup_service._is_root", return_value=False)
def test_apply_requires_root(self, _root: object) -> None:
r = apply_full_kiosk_setup({})
self.assertFalse(r.get("ok"))
if __name__ == "__main__":
unittest.main()