Repository navigation
Commit 1d70758
authored
test(compiler): cover every render input in the compiler differential (#1001)
* test(compiler): generate every render input in the differential seeds
Add rendering feature blocks to the seeded generator: macros reading
context, constants, enums and the environment, nested and typed-reference
macro calls, macro-generated references with relaxed explicit-reference
rules, table functions, variable, environment and hook-context
interpolation, runtime placeholders, cursor intrinsics, macros in tests,
scenarios, audits, functions and source expressions, enum-typed columns,
model-private declarations, named hook arguments, and model, source and
seed audits. The harness provides the fixed environment variable the
generated projects read.
* test(compiler): require render coverage in the compiler differential
Classify CompileProjectInputs stage captures into render input kinds,
crediting a kind only from rendered evidence: a template absent from the
rendered SQL, a recorded usage, reference, grant, hook entry or attached
audit. Encoded empty sets and mappings prove nothing. Kinds credited from
a used macro's source text are reported as indirect.
Add --require-render-coverage and require it in the per-PR compiler
differential job. Share the capture readers with discovery coverage.
* test(compiler): add a render failure corpus
Add one failing project per reachable render, scope and attachment code
(P005, P007, P008, P009, S006, S007, S008, S009, K012, C214 and the C216
warning) and P001 cases for macro, interpolation, reference and hook
argument errors, each checked against its first error message.
render_error_codes derives the code set from the compiler; the end-to-end
test requires every code to be reached unless it is listed as
unreachable with a reason. Share the base-project case builder across
the corpus modules.
* test(compiler): prove compile-input stage captures are complete
Plan a generated project with every feature block and require its
CompileProjectInputs capture to hold every field canonically, name every
callable, and prove every required render kind. Perturb the native
compile inputs to show the differential localises a render mismatch to
the compile_project_inputs capture.1 parent 908e1f0 commit 1d70758
36 files changed
Lines changed: 2848 additions & 302 deletions
File tree
- .github/workflows
- scripts/compiler_differential
- _helpers
- comparing
- corpus
- coverage
- running
- classes
- main
- tests
- e2e/scripts/compiler_differential
- unit/scripts/compiler_differential
- _helpers
- corpus
- coverage
- running
- main
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
293 | 293 | | |
294 | 294 | | |
295 | 295 | | |
296 | | - | |
| 296 | + | |
| 297 | + | |
297 | 298 | | |
298 | 299 | | |
299 | 300 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
72 | 72 | | |
73 | 73 | | |
74 | 74 | | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
| 83 | + | |
| 84 | + | |
| 85 | + | |
| 86 | + | |
| 87 | + | |
| 88 | + | |
75 | 89 | | |
76 | 90 | | |
77 | | - | |
| 91 | + | |
78 | 92 | | |
79 | 93 | | |
80 | 94 | | |
81 | | - | |
82 | | - | |
| 95 | + | |
| 96 | + | |
83 | 97 | | |
84 | 98 | | |
85 | 99 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
11 | 11 | | |
12 | 12 | | |
13 | 13 | | |
| 14 | + | |
14 | 15 | | |
15 | 16 | | |
16 | 17 | | |
| |||
50 | 51 | | |
51 | 52 | | |
52 | 53 | | |
| 54 | + | |
53 | 55 | | |
54 | 56 | | |
55 | 57 | | |
| |||
61 | 63 | | |
62 | 64 | | |
63 | 65 | | |
64 | | - | |
| 66 | + | |
65 | 67 | | |
66 | 68 | | |
| 69 | + | |
67 | 70 | | |
68 | 71 | | |
69 | 72 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
143 | 143 | | |
144 | 144 | | |
145 | 145 | | |
146 | | - | |
| 146 | + | |
147 | 147 | | |
0 commit comments