Commit 5dceb7e
test(conformance): Phase B Unit 6 — retire divergent per-port normalization unit tests
Wire-type normalization (uuid/float/double/jsonb/timestamp/timestamptz/date/
time) and projection reads (passthrough + sum/avg/min/max/count) are now gated
end-to-end by the SHARED persistence-conformance round-trip corpus on all five
ports. The per-port normalization UNIT tests had drifted in coverage (TS ~9
cases, Java/Kotlin 4, Python 3) and are now subsumed by those round-trips:
- REAL/DOUBLE plain-decimal strings -> queries/measurement-floats.yaml
- INTEGER->number / BIGINT->string / NUMERIC->no-trailing-zeros
-> queries/projection-aggregates.yaml
- uuid/jsonb/timestamp(tz)/date/time -> queries/normalization-wire-types.yaml
Delete the subsumed happy-path cases from each port's unit test. KEEP the
out-of-band float guard (canonicalFloat / normalize_value must throw on
exponential-notation values) as a standalone unit test in every port that had
one (TS / Java / Kotlin / Python) — a throwing value cannot be expressed as a
successful round-trip seed. C# never had a separate normalization unit test
(runner + helper only), so nothing changed there.
Each port's Normalization HELPER module is left intact (the runner uses it).
No shared fixtures changed. Document the new gating + retirement in
spec/conformance-tests.md.
Tests: TS 47 pass; Java QueryScenario 14 + ApiContract 20 + NormalizationFloat
2; Kotlin QueryScenario 14 + ApiContract 20 + NormalizationFloat 2; Python 35
pass (all via Testcontainers Postgres). Docker was available.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>1 parent 3a9226d commit 5dceb7e
5 files changed
Lines changed: 43 additions & 87 deletions
File tree
- server
- java
- integration-tests-kotlin/src/test/kotlin/com/metaobjects/integration/kotlin
- integration-tests/src/test/java/com/metaobjects/integration
- python/tests/integration
- typescript/packages/integration-tests/test
- spec
Lines changed: 7 additions & 13 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
3 | 3 | | |
4 | | - | |
5 | 4 | | |
6 | 5 | | |
7 | 6 | | |
8 | | - | |
9 | | - | |
10 | | - | |
11 | | - | |
12 | | - | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
13 | 14 | | |
14 | 15 | | |
15 | | - | |
16 | | - | |
17 | | - | |
18 | | - | |
19 | | - | |
20 | | - | |
21 | | - | |
22 | 16 | | |
23 | 17 | | |
24 | 18 | | |
| |||
Lines changed: 7 additions & 13 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
5 | | - | |
6 | 5 | | |
7 | 6 | | |
8 | 7 | | |
9 | | - | |
10 | | - | |
11 | | - | |
12 | | - | |
13 | | - | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
14 | 15 | | |
15 | 16 | | |
16 | | - | |
17 | | - | |
18 | | - | |
19 | | - | |
20 | | - | |
21 | | - | |
22 | | - | |
23 | 17 | | |
24 | 18 | | |
25 | 19 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
2 | | - | |
3 | | - | |
4 | | - | |
5 | | - | |
6 | | - | |
7 | | - | |
8 | | - | |
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
9 | 13 | | |
10 | 14 | | |
11 | 15 | | |
| |||
15 | 19 | | |
16 | 20 | | |
17 | 21 | | |
18 | | - | |
19 | | - | |
20 | | - | |
21 | | - | |
22 | | - | |
23 | | - | |
24 | | - | |
25 | | - | |
26 | | - | |
27 | | - | |
28 | | - | |
29 | | - | |
30 | 22 | | |
31 | 23 | | |
32 | 24 | | |
| |||
Lines changed: 10 additions & 41 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
2 | 10 | | |
3 | 11 | | |
4 | 12 | | |
5 | 13 | | |
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 | | - | |
| 14 | + | |
46 | 15 | | |
47 | 16 | | |
48 | 17 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
204 | 204 | | |
205 | 205 | | |
206 | 206 | | |
| 207 | + | |
| 208 | + | |
| 209 | + | |
| 210 | + | |
| 211 | + | |
| 212 | + | |
| 213 | + | |
207 | 214 | | |
208 | 215 | | |
209 | 216 | | |
| |||
0 commit comments