Merge branch 'worktree-iso-phase-4' into macros
# Conflicts: # shared/static/scripts/sx-browser.js
This commit is contained in:
@@ -115,6 +115,8 @@
|
||||
(dict :label "Parser" :href "/testing/parser")
|
||||
(dict :label "Router" :href "/testing/router")
|
||||
(dict :label "Renderer" :href "/testing/render")
|
||||
(dict :label "Dependencies" :href "/testing/deps")
|
||||
(dict :label "Engine" :href "/testing/engine")
|
||||
(dict :label "Runners" :href "/testing/runners")))
|
||||
|
||||
(define isomorphism-nav-items (list
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
;; Overview page
|
||||
;; ---------------------------------------------------------------------------
|
||||
|
||||
(defcomp ~testing-overview-content (&key server-results framework-source eval-source parser-source router-source render-source)
|
||||
(defcomp ~testing-overview-content (&key server-results framework-source eval-source parser-source router-source render-source deps-source engine-source)
|
||||
(~doc-page :title "Testing"
|
||||
(div :class "space-y-8"
|
||||
|
||||
@@ -35,6 +35,8 @@
|
||||
+-- test-parser.sx 39 tests: tokenizer, parser, serializer
|
||||
+-- test-router.sx 18 tests: route matching + param extraction
|
||||
+-- test-render.sx 23 tests: HTML rendering + components
|
||||
+-- test-deps.sx 33 tests: dependency analysis + IO detection
|
||||
+-- test-engine.sx 37 tests: trigger/swap/retry parsing
|
||||
|
||||
Runners:
|
||||
run.js Node.js — injects platform fns, runs specs
|
||||
@@ -51,7 +53,9 @@ Platform functions (5 total):
|
||||
Per-spec platform functions:
|
||||
parser: sx-parse, sx-serialize, make-symbol, make-keyword, ...
|
||||
router: (none — pure spec, uses bootstrapped functions)
|
||||
render: render-html (wraps parse + render-to-html)")))
|
||||
render: render-html (wraps parse + render-to-html)
|
||||
deps: test-env (returns current evaluation environment)
|
||||
engine: (none — pure spec, uses bootstrapped functions)")))
|
||||
|
||||
;; Server results
|
||||
(when server-results
|
||||
@@ -86,6 +90,8 @@ Per-spec platform functions:
|
||||
(textarea :id "test-spec-parser" :style "display:none" parser-source)
|
||||
(textarea :id "test-spec-router" :style "display:none" router-source)
|
||||
(textarea :id "test-spec-render" :style "display:none" render-source)
|
||||
(textarea :id "test-spec-deps" :style "display:none" deps-source)
|
||||
(textarea :id "test-spec-engine" :style "display:none" engine-source)
|
||||
(script :src (asset-url "/scripts/sx-test-runner.js")))
|
||||
|
||||
;; Test spec index
|
||||
@@ -107,7 +113,15 @@ Per-spec platform functions:
|
||||
(a :href "/testing/render" :class "block rounded-lg border border-stone-200 p-5 hover:border-violet-300 hover:bg-violet-50 transition-colors"
|
||||
(h3 :class "font-semibold text-stone-800" "Renderer")
|
||||
(p :class "text-sm text-stone-500" "23 tests — elements, attributes, void elements, fragments, escaping, control flow, components")
|
||||
(p :class "text-xs text-violet-600 mt-1" "test-render.sx"))))
|
||||
(p :class "text-xs text-violet-600 mt-1" "test-render.sx"))
|
||||
(a :href "/testing/deps" :class "block rounded-lg border border-stone-200 p-5 hover:border-violet-300 hover:bg-violet-50 transition-colors"
|
||||
(h3 :class "font-semibold text-stone-800" "Dependencies")
|
||||
(p :class "text-sm text-stone-500" "33 tests — scan-refs, transitive-deps, components-needed, IO detection, purity classification")
|
||||
(p :class "text-xs text-violet-600 mt-1" "test-deps.sx"))
|
||||
(a :href "/testing/engine" :class "block rounded-lg border border-stone-200 p-5 hover:border-violet-300 hover:bg-violet-50 transition-colors"
|
||||
(h3 :class "font-semibold text-stone-800" "Engine")
|
||||
(p :class "text-sm text-stone-500" "37 tests — parse-time, trigger specs, swap specs, retry logic, param filtering")
|
||||
(p :class "text-xs text-violet-600 mt-1" "test-engine.sx"))))
|
||||
|
||||
;; What it proves
|
||||
(div :class "rounded-lg border border-blue-200 bg-blue-50 p-5 space-y-3"
|
||||
|
||||
Reference in New Issue
Block a user