PureYAML/Tests
Mihaela Mihaljevic e8987e4cfd feat(parsing): add authoritative canonical-event conformance gate
The conformance number was measured against a lossy oracle: the JSON
projection (in.json) discards anchors, tags, and scalar styles, and exists
for only about half the cases, so "passing" often meant only "parse did not
throw". Measured against the official suite's own test.event event streams,
the true exact conformance is 254 of 308 valid cases (40 emit a wrong event
stream, 14 false-reject), well below the JSON-proxy figure.

Add a canonical-event gate (Tests/CanonicalEventConformanceTests.swift) that
serializes the parser's events into the yaml-test-suite yeast format and
compares them exactly to each case's test.event, checking anchors, tags,
scalar styles, flow vs block, and explicit document markers, for every valid
case. The gate records the gap set and fails on any regression or unrecorded
fix. All 402 test.event files are vendored alongside their inputs.

To make the comparison exact, the parser Event model now records whether a
document boundary was explicit (documentStart/documentEnd carry an `explicit`
flag), distinguishing `---`/`...` from an implicit boundary. This resolves 89
cases that were previously correct but unverifiable without normalization.

No parser behavior changed; this is measurement and model fidelity. The 40
wrong-event and 14 false-reject cases are the real remaining gaps, to be fixed
against this gate.
2026-06-24 01:24:24 +02:00
..
Fixtures feat(parsing): add authoritative canonical-event conformance gate 2026-06-24 01:24:24 +02:00
ACMEZephyrFixtureTests.swift
AnchoredIndentedNodeParsingTests.swift
ArbitraryAnyDecisionTests.swift
CanonicalEventConformanceTests.swift feat(parsing): add authoritative canonical-event conformance gate 2026-06-24 01:24:24 +02:00
CodableCompatibilityFixtures.swift
CodableCompatibilityTests.swift
CodingTests.swift
CollectionCompatibilityFixtures.swift
ComplexMappingKeyCodableTests.swift
ComplexMappingKeyDumperTests.swift
ComplexMappingKeyParsingTests.swift fix(parsing): support empty (null) nodes in every position 2026-06-23 20:40:40 +02:00
ComplexMappingKeyTestSupport.swift
ComplexMappingKeyValidationTests.swift
DiagnosticValidationReportTests.swift fix(parsing): reject invalid input that was wrongly accepted 2026-06-23 22:13:35 +02:00
DocumentationExampleTests.swift
DownstreamDocumentFixtures.swift
DownstreamDocumentTests.swift
DumperEmptyCollectionTests.swift
DumperTests.swift fix(emitting): escape CRLF per unicode scalar in double-quoted output 2026-06-23 22:23:40 +02:00
EmitterCorpusTests.swift
EventStreamingParserTests.swift
JSONCompatibilityTests.swift
KeyedCodingTests.swift
LiteralBlockEmissionFixtures.swift
MergeKeyCompatibilityTests.swift
ModelTests.swift
ParsingAliasTests.swift
ParsingCompatibilityTests.swift
ParsingErrorTests.swift fix(parsing): reject invalid input that was wrongly accepted 2026-06-23 22:13:35 +02:00
ParsingEventTests.swift feat(parsing): add authoritative canonical-event conformance gate 2026-06-24 01:24:24 +02:00
ParsingIndentationRegressionTests.swift
ParsingMultilineScalarTests.swift fix(parsing): parse multi-line and block scalars at the document root 2026-06-23 22:56:33 +02:00
ParsingNestingLimitTests.swift fix(parsing): bound nesting depth so pathological input errors instead of crashing 2026-06-23 09:29:45 +02:00
ParsingTests.swift
PerformancePhaseTests.swift
PreflightScannerTests.swift
RealYAMLCorpusPropertyTests.swift
RealYAMLCorpusTests.swift
RealYAMLFixtureTests.swift
RoundTripDemonstrationTests.swift test: demonstrate yaml/json parsing and generation round-trips 2026-06-08 00:13:56 +02:00
ScalarCompatibilityFixtures.swift
ScannerTests.swift feat(parsing): handle directives and document-end boundaries 2026-06-23 21:31:58 +02:00
StreamDumpingTests.swift
StreamParsingTests.swift fix(parsing): parse multi-line and block scalars at the document root 2026-06-23 22:56:33 +02:00
TaggedCompatibilityTests.swift
TaggedConstructorTests.swift
TestSupport.swift
UnkeyedCodingFixtures.swift
UnkeyedCodingTests.swift
UnkeyedEncodingFixtures.swift
UnkeyedFailureFixtures.swift
UnsupportedYAMLGapsFixtures.swift feat(parsing): handle directives and document-end boundaries 2026-06-23 21:31:58 +02:00
ValidationBuiltinRuleTests.swift
ValidationCorpusFixtures.swift
ValidationCorpusSupport.swift
ValidationCorpusTests.swift
ValidationFailureFixtureTests.swift
ValidationModelTests.swift
ValidationModeTests.swift
ValidationReportTests.swift
ValidationTests.swift
ValidationTestSupport.swift
YAMLTestSuiteGapsTests.swift test(conformance): track all 402 suite cases; fix 3 regressions 2026-06-24 00:16:28 +02:00