Files
spoopyghosty0--frameport/tests/test_speed.py
T
spoopyghosty0 428e8ffe05 Quest binary fixes, PC VR launch modes + SteamVR tuning, file sending, GUI scaling
Quest (Frame):
- frame.swapchain_limit (default on): overport's dispatcher aborted on swapchains
  > 4096 px (4XVR's 7680x3840 theatre textures); guard raised to 16384.
- frame.vk_sanitize (default on, Unreal): Vulkan shim (native/vkshim) that drops
  invalid render-pass pNext pointers; Lepton's Fossilize layer crashed Deadpool VR on them.
- FrameBridge: cylinder layers (curved menus / movie screens) shown as flat quad
  strips (setting cylinder_strips). Equirect (360°) layers still can't be shown.
- Launch tests read Lepton's crash logcat (agent v24); triage signatures for both crashes.
- Send files to Lepton apps (frameport frame send/storage, GUI "Send files"):
  ~/Videos, ~/Downloads, ~/Documents = /sdcard/Movies, Download, Documents in every app.

PC VR:
- Launch modes from the game files (repack with bundled Revive -> run directly,
  dual-API builds -> launch args, Oculus-only -> Revive); patches pcvr.repack_launcher,
  pcvr.launch_args; Platform SDK games routed to the PC.
- pcvr.steamvr_tuning (default on): reads SteamVR's session summary (dropped frames
  + compositor timeouts, fpsVR if installed) and sets per-app refresh rate / motion
  smoothing via fp_vrsettings.exe (OpenVR IVRSettings).

GUI: upload speed / ETA, UI scale (auto from Windows DPI under WSL, Settings ->
Appearance), fixed grey box in Problems & feedback.
2026-09-30 21:51:37 -04:00

17 lines
655 B
Python

from frameport.install.installer import Speed
def test_speed_window_and_eta():
t = [0.0]
s = Speed(total=1000 * 10**6, window=5.0, clock=lambda: t[0])
assert s.text(0) == ""
t[0] = 0.5
assert s.text(10 * 10**6) == "" # under a second of samples
t[0] = 2.0
assert s.text(100 * 10**6) == "50.0 MB/s · ~18 s left"
for i in range(3, 20): # the rate follows the last few seconds, not the average since the start
t[0] = float(i)
s.text(100 * 10**6 + (i - 2) * 10 * 10**6)
assert s.text(100 * 10**6 + 17 * 10 * 10**6).startswith("10.0 MB/s · ~")
assert Speed(10**12, clock=lambda: 0.0).text(5) == ""