docs QA: diagrams must parse in a real mermaid renderer
The first architecture set did not render (backslash-n escapes, semicolons in sequence messages, braces in text). All diagrams rewritten to conservative syntax and QA-verified with mermaid-cli (3/3 PARSE-OK). qa-diagrams.sh added; CI enforces it on docs changes. Ticket: https://projects.knownelement.com/issues/832
This commit is contained in:
Executable
+15
@@ -0,0 +1,15 @@
|
||||
#!/bin/bash
|
||||
# qa-diagrams.sh — every ```mermaid block in docs/ must parse in a real renderer.
|
||||
# Usage: tests/qa-diagrams.sh (needs docker + minlag/mermaid-cli + /usr/bin/chromium)
|
||||
set -euo pipefail
|
||||
QA=$(mktemp -d)
|
||||
awk '/^```mermaid/{n++; f=QA"/d"n".mmd"; next} /^```/{f=""; next} f!=""{print > f}' QA="$QA" docs/*.md
|
||||
echo '{"args":["--no-sandbox","--disable-setuid-sandbox","--disable-gpu"]}' > "$QA/pptr.json"
|
||||
fail=0
|
||||
docker run --rm -v "$QA":/qa --entrypoint sh minlag/mermaid-cli:latest -c '
|
||||
for f in /qa/d*.mmd; do
|
||||
PUPPETEER_EXECUTABLE_PATH=/usr/bin/chromium mmdc -p /qa/pptr.json -i "$f" -o /tmp/out.svg >/dev/null 2>&1 || { echo "PARSE-FAIL: $f"; exit 1; }
|
||||
echo "PARSE-OK: $f"
|
||||
done' || fail=1
|
||||
rm -rf "$QA"
|
||||
exit $fail
|
||||
Reference in New Issue
Block a user