Skip to content

Commit c11b01e

Browse files
hyperpolymathclaude
andcommitted
test(opm-canonicalizer): achieve CRG C — 27 tests + 5 benchmarks
Adds lib.rs with 22 unit/smoke/E2E/contract/aspect tests, proptest property tests (idempotence, key sorting, array order, no-whitespace, negative ints), and Criterion benchmarks for the opm-canonicalizer sub-project. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
1 parent 3d34aa4 commit c11b01e

8 files changed

Lines changed: 1375 additions & 147 deletions

File tree

.machine_readable/6a2/STATE.a2ml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,3 +12,8 @@ status = "active"
1212
name = "developer-ecosystem"
1313
completion-percentage = 0
1414
phase = "In development"
15+
16+
[crg]
17+
grade = "C"
18+
achieved-on = "2026-04-04"
19+
representative-crate = "opm-canonicalizer"

TEST-NEEDS.md

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,18 @@
11
# Test & Benchmark Requirements
22

3+
## CRG Grade: C — ACHIEVED 2026-04-04
4+
5+
All CRG C categories represented in `opm-canonicalizer` (the primary testable sub-project):
6+
- Unit: 22 tests (null, bool, int, string, object sorting, escaping, error cases)
7+
- Smoke: duplicate key rejection, float rejection
8+
- P2P/property: 5 proptest properties (idempotence, no-whitespace, key sorting, array order, negative int roundtrip)
9+
- E2E/reflexive: canonicalize-twice idempotency, whitespace stripping
10+
- Contract: output format invariants (no spaces between tokens, negative ints preserved)
11+
- Aspect: empty string, control char escaping, deep nesting (50 levels), malformed input
12+
- Benchmarks: 5 Criterion benchmarks (null, simple object, nested object, array, escapes)
13+
14+
**Ecosystem-wide**: 2248 test files across 29+ sub-ecosystems (includes rescript-ecosystem compiler tests, Zig integration tests, robot-vacuum-cleaner Julia tests, etc.)
15+
316
## Current State
417
- Unit tests: ~5 Rust test files + ~4 TS test files + ~54 Zig test files — partial coverage
518
- Integration tests: partial (some Zig integration tests across ecosystem packages)

0 commit comments

Comments
 (0)