Archived
0a36a454f9
- New crate el-test: test discovery, in-memory graph seeding, assertion evaluator, TestRunner, TestReport with human/JSON/JUnit XML output - New keywords: test, seed, assert, target — fully integrated into lexer, parser, codegen, type-checker - Parser extensions: TestDef, SeedStmt, Assert AST nodes; seed blocks handle type: as field name (keyword-as-ident in seed context) - Debugger: DebugEvent, Debugger, StepMode, StackFrame in el-compiler — breakpoints, step-over, step-into, step-out - CLI: el test-file <file.el> runs tests; el test integrates with project; el debug attaches debugger; --output json|junit for CI - 52 new tests in el-test covering discovery, graph seeding, assertion evaluation, pass/fail/error/skip, report generation, JUnit XML - Example: examples/hello-project/src/tests.el — 6 unit tests pass, 1 e2e test correctly skipped without ENGRAM_URL
25 lines
727 B
TOML
25 lines
727 B
TOML
[package]
|
|
name = "el"
|
|
description = "Engram language CLI — el build / run / check / seal / unseal / new / add / publish / …"
|
|
version.workspace = true
|
|
edition.workspace = true
|
|
license.workspace = true
|
|
|
|
[[bin]]
|
|
name = "el"
|
|
path = "src/main.rs"
|
|
|
|
[dependencies]
|
|
el-lexer = { workspace = true }
|
|
el-parser = { workspace = true }
|
|
el-types = { workspace = true }
|
|
el-compiler = { workspace = true }
|
|
el-seal = { workspace = true }
|
|
el-manifest = { workspace = true }
|
|
el-registry = { workspace = true }
|
|
el-build = { workspace = true }
|
|
el-test = { workspace = true }
|
|
clap = { workspace = true }
|
|
thiserror = { workspace = true }
|
|
tokio = { version = "1", features = ["rt", "rt-multi-thread", "macros"] }
|