mirror of
https://github.com/MCKero6423/uv-k5-v3-emulator.git
synced 2026-10-02 03:15:36 +00:00
Emulator: multiboot slots from the page, flash controller, portable tests
flash controller: store ACR/OPTKEYR instead of swallowing them, which is what stopped the factory bootloader from starting slots over the firmware's own serial protocol (0x0720 family); uvk5_socket/uvk5_testenv so a fresh checkout skips instead of failing; web UI slot table and Multiboot button; quick start, CONTRIBUTING, and stop tracking firmware images and radio dumps
This commit is contained in:
1 parent
ee80939c78
commit
2667e046e8
54 files changed
+5345
-347
No files matched your search
@@ -3,6 +3,8 @@
|
||||
import os
|
||||
import socket
|
||||
import unittest
|
||||
|
||||
import uvk5_socket
|
||||
import unittest.mock
|
||||
|
||||
from uvk5_supervisor import Supervisor
|
||||
@@ -216,6 +218,8 @@ class TestWaitForSocket(unittest.TestCase):
|
||||
import shutil
|
||||
shutil.rmtree(self.dir, ignore_errors=True)
|
||||
|
||||
@unittest.skipUnless(uvk5_socket.can_use_unix(),
|
||||
"needs unix sockets, which a Windows QEMU cannot create")
|
||||
def test_returns_false_for_a_stale_socket_file(self):
|
||||
from uvk5_supervisor import wait_for_socket
|
||||
# A socket file with nothing listening: bind then close.
|
||||
@@ -225,6 +229,8 @@ class TestWaitForSocket(unittest.TestCase):
|
||||
self.assertTrue(os.path.exists(self.path), "need a leftover file")
|
||||
self.assertFalse(wait_for_socket(self.path, timeout=0.5))
|
||||
|
||||
@unittest.skipUnless(uvk5_socket.can_use_unix(),
|
||||
"needs unix sockets, which a Windows QEMU cannot create")
|
||||
def test_returns_true_when_something_is_listening(self):
|
||||
from uvk5_supervisor import wait_for_socket
|
||||
srv = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM)
|
||||
|
||||
Reference in new issue
Block a user