Replace the physical ekp-region renderer with ekp-buffer text-property projection backed by shared semantic layout plans and stable live-edit transactions. Optimize the C-backed resize hot path, and add deterministic performance, ERT, GUI, fuzz, release, and documentation coverage for task017 through task032. BREAKING CHANGE: require ekp-buffer instead of ekp-region and rename module-owned ekp-region-* settings to ekp-buffer-*.
29 lines
900 B
Bash
Executable File
29 lines
900 B
Bash
Executable File
#!/bin/sh
|
|
# Run every EKP ERT test in a fresh Emacs process.
|
|
# Usage: tests/run-tests-isolated.sh [path-to-emacs]
|
|
|
|
set -eu
|
|
|
|
EMACS="${1:-${EMACS:-emacs}}"
|
|
ROOT="$(cd "$(dirname "$0")/.." && pwd)"
|
|
|
|
TESTS=$(
|
|
"$EMACS" -Q --batch -L "$ROOT" -L "$ROOT/tests" \
|
|
-l "$ROOT/tests/ekp-tests.el" \
|
|
-l "$ROOT/tests/ekp-buffer-tests.el" \
|
|
-l "$ROOT/tests/ekp-gui-tests.el" \
|
|
-l "$ROOT/tests/ekp-c-tests.el" \
|
|
--eval '(dolist (test (ert-select-tests "^ekp-\\(?:test\\|[[:alnum:]-]+-test\\)-" t))
|
|
(princ (format "%s\n" (ert-test-name test))))'
|
|
)
|
|
|
|
for test_name in $TESTS; do
|
|
echo "isolated ERT: $test_name"
|
|
"$EMACS" -Q --batch -L "$ROOT" -L "$ROOT/tests" \
|
|
-l "$ROOT/tests/ekp-tests.el" \
|
|
-l "$ROOT/tests/ekp-buffer-tests.el" \
|
|
-l "$ROOT/tests/ekp-gui-tests.el" \
|
|
-l "$ROOT/tests/ekp-c-tests.el" \
|
|
--eval "(ert-run-tests-batch-and-exit '$test_name)"
|
|
done
|