makepad/platform/hal/scripts/calculator.hal
Admin 9aadd43f22 platform: HAL-only on every platform; the old backends are deleted
Every native platform now runs on the HAL (makepad-hal) alone: macOS and
iOS/tvOS on Metal, Windows on D3D11 (with device-loss recovery), Linux on
Vulkan (X11, Wayland and direct KMS, multi-GPU laptops with per-output
modes, mirror/extended arrangements and pacing) plus a GLES backend, and
Android on Vulkan with media, camera, network, haptics and file access on
the HAL. The old per-OS backends, the hal cfg and OpenHarmony are gone.
GPU memory: the HAL reads the device budget, keeps a UI reserve and raises
GpuPressure; failed allocations wait for room. One font service per host,
a frame profiler, held events for hidden views, automation for tests. Our
own generated Vulkan, Wayland and Windows bindings replace vendored ones.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-13 12:26:21 +02:00

21 lines
615 B
Text

# Calculator through the HAL: 12 + 3 = 15 (headless, no window system).
# MAKEPAD_HAL_SCRIPT=platform/hal/scripts/calculator.hal ./makepad-app-calculator
# Uses the native HAL build. One JSON line per step, a summary line last; a failing
# step or budget makes the exit code non-zero. The app keeps its session between runs, so the
# script clears first.
wait_gpu
wait_frame 2
budget stale_ids == 0
budget ledger_bytes <= 100000000
click k_clear
click k_1
click k_2
click k_add
click k_3
click k_eq
wait_gpu
wait_frame 2
query widgets
expect "display.result\tLabel\t1"
expect "\t0:0\t15\n"
snapshot calculator_15