mirror of
https://github.com/priyanshujain/sanderling.git
synced 2026-10-02 19:17:10 +00:00
* fix(runner): allow nil connection for web platform * fix(testrun): skip SDK handshake for web platform * feat(folio-web): add React/Vite web sample app * feat(folio-web): add sanderling spec * fix(chrome): use InsertText for multi-char text input * feat(hierarchy): add Screen field populated from sanderling-screen attr * fix(chrome): auto-detect viewport from CSS vars, fix InputText accumulation, expose route as screen * fix(runner): fall back to hierarchy root screen when snapshot screen is empty * fix(folio-web): broaden loggedIn extractor to all authenticated pages
30 lines
928 B
Makefile
30 lines
928 B
Makefile
set shell := ["bash", "-cu"]
|
|
|
|
sanderling := env_var_or_default("SANDERLING", "sanderling")
|
|
duration := env_var_or_default("DURATION", "1m")
|
|
seed := env_var_or_default("SEED", "0")
|
|
output := env_var_or_default("OUTPUT", justfile_directory() / "sanderling" / "runs")
|
|
port := env_var_or_default("PORT", "5173")
|
|
|
|
default:
|
|
@just --list
|
|
|
|
# Run sanderling property tests against the folio web app.
|
|
test:
|
|
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
bun run dev --port {{port}} &
|
|
DEV_PID=$!
|
|
trap "kill $DEV_PID 2>/dev/null || true" EXIT
|
|
for i in $(seq 1 30); do
|
|
curl -sf "http://localhost:{{port}}" > /dev/null && break
|
|
sleep 1
|
|
done
|
|
"{{sanderling}}" test \
|
|
--spec "{{justfile_directory()}}/sanderling/spec.ts" \
|
|
--bundle-id "http://localhost:{{port}}" \
|
|
--platform web \
|
|
--duration "{{duration}}" \
|
|
--seed "{{seed}}" \
|
|
--output "{{output}}"
|