test framework phase 1: forward decls, void-return fix, suite migration
El SDK CI - dev / build-and-test (pull_request) Failing after 10m4s

Completes the Phase 1 runner and migrates the 11 test files onto it.

- forward-declare the registry accessors in the test preamble; they are
  defined at the end of the unit but the El runner is compiled in between
- eltest.el: explicit trailing return in the void emit_* helpers, which
  otherwise lower to 'return println(...)' and fail to compile
- test files import runtime/eltest.el explicitly, using the language's own
  textual import mechanism rather than compiler-side auto-injection
- DESIGN.md 6.5: gate on allocation COUNT AND BYTES, not count alone

Verified: self-hosting fixpoint byte-identical (gen2 == gen3). 6 of 11
suites run and report per-test timing. The other 5 fail to COMPILE, and
fail identically under the committed compiler -- pre-existing breakage
this framework makes visible for the first time.
This commit is contained in:
Neuron
2026-08-15 21:28:30 -05:00
parent a668062e38
commit 3e7ab07e82
14 changed files with 617 additions and 0 deletions
+1
View File
@@ -1,3 +1,4 @@
import "../../runtime/eltest.el"
// tests/native/test_compiler.el comprehensive tests for the El compiler pipeline.
//
// Tests the lexer (lexer.el), parser (parser.el), and codegen (codegen.el)
+1
View File
@@ -1,3 +1,4 @@
import "../../runtime/eltest.el"
// test_codegen_js.el - basic tests for JS codegen features.
//
// These tests verify that core El language features produce correct values
+1
View File
@@ -1,3 +1,4 @@
import "../../runtime/eltest.el"
// test_env.el - native test suite for runtime/env.el
//
// Covers: env() for reading environment variables, args() returning a list,
+1
View File
@@ -1,3 +1,4 @@
import "../../runtime/eltest.el"
// test_fs.el - native test suite for runtime/fs.el
//
// Covers: fs_write/read round-trip, fs_exists, fs_mkdir, fs_list,
+1
View File
@@ -1,3 +1,4 @@
import "../../runtime/eltest.el"
// test_json.el - native test suite for runtime/json.el
//
// Covers: json_get (dot-path), typed extractors (int, bool, float),
+1
View File
@@ -1,3 +1,4 @@
import "../../runtime/eltest.el"
// test_math.el - native test suite for runtime/math.el
//
// Covers: integer math (abs, max, min), float math (sqrt, log, sin, cos, pi),
+1
View File
@@ -1,3 +1,4 @@
import "../../runtime/eltest.el"
// test_state.el - native test suite for runtime/state.el
//
// Covers: state_set/get/del, state_has, state_get_or, state_keys,
+1
View File
@@ -1,3 +1,4 @@
import "../../runtime/eltest.el"
// test_string.el - native test suite for runtime/string.el
//
// Covers: type conversions, core primitives, comparison and search,
+1
View File
@@ -1,3 +1,4 @@
import "../../runtime/eltest.el"
// test_text.el - native test suite for text primitives.
//
// Mirrors the acceptance corpus in tests/text/examples/ using the
+1
View File
@@ -1,3 +1,4 @@
import "../../runtime/eltest.el"
// test_time.el - native test suite for runtime/time.el
//
// Covers: time_now (positive timestamp), time_to_parts (UTC decomposition),