HS: extend parser/runtime + new node test runner; ignore test-results/
- Parser: `--` line comments, `|` op, `result` → `the-result`, query-scoped `<sel> in <expr>`, `is a/an <type>` predicate, multi-`as` chaining with `|`, `match`/`precede` keyword aliases, `[attr]` add/toggle, between attr forms - Runtime: per-element listener registry + hs-deactivate!, attr toggle variants, set-inner-html boots subtree, hs-append polymorphic on string/list/element, default? / array-set! / query-all-in / list-set via take+drop, hs-script idempotence guard - Integration: skip reserved (me/it/event/you/yourself) when collecting vars - Tokenizer: emit `--` comments and `|` op - Test framework + conformance runner updates; new tests/hs-run-filtered.js (single-process Node runner using OCaml VM step-limit to bound infinite loops); generate-sx-conformance-dev.py improvements - mcp_tree.ml + run_tests.ml: harness extensions - .gitignore: top-level test-results/ (Playwright artifacts) Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -40,7 +40,7 @@
|
||||
"set attribute"
|
||||
(let
|
||||
((sx (hs-to-sx-from-source "set @title to 'hello'")))
|
||||
(assert= (quote dom-set-attr) (first sx))
|
||||
(assert= (quote hs-set-attr!) (first sx))
|
||||
(assert= "title" (nth sx 2))
|
||||
(assert= "hello" (nth sx 3))))
|
||||
(deftest
|
||||
@@ -284,12 +284,16 @@
|
||||
"increment attribute"
|
||||
(let
|
||||
((sx (hs-to-sx-from-source "increment @count")))
|
||||
(assert= (quote dom-set-attr) (first sx))))
|
||||
(assert= (quote let) (first sx))
|
||||
(assert= (quote do) (first (nth sx 2)))
|
||||
(assert= (quote dom-set-attr) (first (nth (nth sx 2) 1)))))
|
||||
(deftest
|
||||
"decrement attribute"
|
||||
(let
|
||||
((sx (hs-to-sx-from-source "decrement @count")))
|
||||
(assert= (quote dom-set-attr) (first sx)))))
|
||||
(assert= (quote let) (first sx))
|
||||
(assert= (quote do) (first (nth sx 2)))
|
||||
(assert= (quote dom-set-attr) (first (nth (nth sx 2) 1))))))
|
||||
|
||||
(defsuite
|
||||
"hs-live-demo-toggle"
|
||||
|
||||
Reference in New Issue
Block a user