Multi-class add/remove, async IO in test runner — 280/831 (34%)
- Parser: add .foo .bar collects multiple class refs into multi-add-class AST - Compiler: multi-add-class/multi-remove-class emit (do (dom-add-class...) ...) - Test runner: drives IO suspension chains (wait/fetch/settle) via _driveAsync so async HS tests (wait 100ms, settle, fetch) can complete - Assertion failed: 51→49 Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -653,6 +653,14 @@
|
||||
(quote dom-add-class)
|
||||
(hs-to-sx (nth ast 2))
|
||||
(nth ast 1)))
|
||||
((= head (quote multi-add-class))
|
||||
(let ((target (hs-to-sx (nth ast 1)))
|
||||
(classes (rest (rest ast))))
|
||||
(cons (quote do) (map (fn (cls) (list (quote dom-add-class) target cls)) classes))))
|
||||
((= head (quote multi-remove-class))
|
||||
(let ((target (hs-to-sx (nth ast 1)))
|
||||
(classes (rest (rest ast))))
|
||||
(cons (quote do) (map (fn (cls) (list (quote dom-remove-class) target cls)) classes))))
|
||||
((= head (quote remove-class))
|
||||
(list
|
||||
(quote dom-remove-class)
|
||||
|
||||
Reference in New Issue
Block a user