PureYAML/Tests
Mihaela Mihaljevic ce0585f77e test(conformance): track all 402 suite cases; fix 3 regressions
The gap-only manifest stopped guarding a case once it was fixed, so later
work silently regressed previously-fixed cases (caught only by an external
full-suite run, not the gated sweep or full corpus). Replace it with a full
manifest of all 402 official cases (Tests/Fixtures/yaml-test-suite-manifest.yaml),
each carrying its conformant expectation and a passing/gap status, with every
case's files vendored. The gated sweep now asserts every passing case still
passes (the regression guard) and every gap still reproduces, so any regression
fails the build.

The honest gate-enforced count is 329/402 passing (the earlier 348 came from a
more lenient one-time oracle).

Repairs three regressions the new gate revealed: the bucket-6 tab rule
over-rejected tabs in block-scalar content and as separation before a scalar
value (root cause: the batch scanner and the incremental TokenCursor had
divergent line-start loops; unified onto a single scanStep, fixing 96NN/00,
96NN/01, R4YG, Y79Y/001, DK95/00, DK95/03, DK95/07, 6CA3, Q5MG, J3BT); an anchor
on a prior line before an alias key wrongly rejected 26DV; and a tag-only flow
key mis-parsed WZ62. Genuine tab-indentation errors (4EJS, Y79Y/000) still reject.
2026-06-24 00:16:28 +02:00
..
Fixtures test(conformance): track all 402 suite cases; fix 3 regressions 2026-06-24 00:16:28 +02:00
ACMEZephyrFixtureTests.swift feat(parser): harden diagnostics and streaming 2026-06-06 07:57:48 +02:00
AnchoredIndentedNodeParsingTests.swift feat(model): support complex mapping keys 2026-06-05 16:08:45 +02:00
ArbitraryAnyDecisionTests.swift docs(api): reject arbitrary any conversion 2026-06-05 14:34:17 +02:00
CodableCompatibilityFixtures.swift feat(codable): broaden compatibility coverage 2026-06-05 12:49:20 +02:00
CodableCompatibilityTests.swift Add machine-readable validation reports 2026-06-05 20:39:32 +02:00
CodingTests.swift feat(coding): add unkeyed typed conversion 2026-06-05 12:23:52 +02:00
CollectionCompatibilityFixtures.swift fix(parser): match block continuation parsing 2026-06-05 22:12:12 +02:00
ComplexMappingKeyCodableTests.swift feat(model): support complex mapping keys 2026-06-05 16:08:45 +02:00
ComplexMappingKeyDumperTests.swift feat(model): support complex mapping keys 2026-06-05 16:08:45 +02:00
ComplexMappingKeyParsingTests.swift fix(parsing): support empty (null) nodes in every position 2026-06-23 20:40:40 +02:00
ComplexMappingKeyTestSupport.swift feat(model): support complex mapping keys 2026-06-05 16:08:45 +02:00
ComplexMappingKeyValidationTests.swift feat(model): support complex mapping keys 2026-06-05 16:08:45 +02:00
DiagnosticValidationReportTests.swift fix(parsing): reject invalid input that was wrongly accepted 2026-06-23 22:13:35 +02:00
DocumentationExampleTests.swift feat(emitting): dump YAML streams 2026-06-05 17:14:41 +02:00
DownstreamDocumentFixtures.swift test(compatibility): add downstream document fixtures 2026-06-05 13:45:23 +02:00
DownstreamDocumentTests.swift feat(parser): expand YAML merge keys 2026-06-05 15:12:55 +02:00
DumperEmptyCollectionTests.swift Add machine-readable validation reports 2026-06-05 20:39:32 +02:00
DumperTests.swift fix(emitting): escape CRLF per unicode scalar in double-quoted output 2026-06-23 22:23:40 +02:00
EmitterCorpusTests.swift feat(emitting): broaden literal block fixtures 2026-06-05 13:37:33 +02:00
EventStreamingParserTests.swift feat(parser): harden diagnostics and streaming 2026-06-06 07:57:48 +02:00
JSONCompatibilityTests.swift feat(parser): harden diagnostics and streaming 2026-06-06 07:57:48 +02:00
KeyedCodingTests.swift feat(coding): add unkeyed typed conversion 2026-06-05 12:23:52 +02:00
LiteralBlockEmissionFixtures.swift feat(emitting): broaden literal block fixtures 2026-06-05 13:37:33 +02:00
MergeKeyCompatibilityTests.swift feat(parser): expand YAML merge keys 2026-06-05 15:12:55 +02:00
ModelTests.swift feat(parsing): add reader scanner core 2026-06-05 07:40:23 +02:00
ParsingAliasTests.swift Harden parser against real YAML fixtures 2026-06-05 19:34:30 +02:00
ParsingCompatibilityTests.swift feat(parser): harden diagnostics and streaming 2026-06-06 07:57:48 +02:00
ParsingErrorTests.swift fix(parsing): reject invalid input that was wrongly accepted 2026-06-23 22:13:35 +02:00
ParsingEventTests.swift Add production validation reports 2026-06-05 20:23:20 +02:00
ParsingIndentationRegressionTests.swift Add production validation reports 2026-06-05 20:23:20 +02:00
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 Harden parser against real YAML fixtures 2026-06-05 19:34:30 +02:00
PerformancePhaseTests.swift feat(parser): harden diagnostics and streaming 2026-06-06 07:57:48 +02:00
PreflightScannerTests.swift feat(parser): harden diagnostics and streaming 2026-06-06 07:57:48 +02:00
RealYAMLCorpusPropertyTests.swift feat(parser): harden diagnostics and streaming 2026-06-06 07:57:48 +02:00
RealYAMLCorpusTests.swift feat(parser): harden diagnostics and streaming 2026-06-06 07:57:48 +02:00
RealYAMLFixtureTests.swift Harden parser against real YAML fixtures 2026-06-05 19:34:30 +02:00
RoundTripDemonstrationTests.swift test: demonstrate yaml/json parsing and generation round-trips 2026-06-08 00:13:56 +02:00
ScalarCompatibilityFixtures.swift Add scalar compatibility corpus 2026-06-05 13:07:04 +02:00
ScannerTests.swift feat(parsing): handle directives and document-end boundaries 2026-06-23 21:31:58 +02:00
StreamDumpingTests.swift feat(emitting): dump YAML streams 2026-06-05 17:14:41 +02:00
StreamParsingTests.swift fix(parsing): parse multi-line and block scalars at the document root 2026-06-23 22:56:33 +02:00
TaggedCompatibilityTests.swift feat(tagged): add tag-preserving validation 2026-06-05 15:35:52 +02:00
TaggedConstructorTests.swift feat(tagged): add typed constructor policy 2026-06-05 16:24:11 +02:00
TestSupport.swift Harden parser against real YAML fixtures 2026-06-05 19:34:30 +02:00
UnkeyedCodingFixtures.swift test(coding): add sequence fixtures and contract gate 2026-06-05 12:33:09 +02:00
UnkeyedCodingTests.swift Add machine-readable validation reports 2026-06-05 20:39:32 +02:00
UnkeyedEncodingFixtures.swift Add machine-readable validation reports 2026-06-05 20:39:32 +02:00
UnkeyedFailureFixtures.swift test(coding): add sequence fixtures and contract gate 2026-06-05 12:33:09 +02:00
UnsupportedYAMLGapsFixtures.swift feat(parsing): handle directives and document-end boundaries 2026-06-23 21:31:58 +02:00
ValidationBuiltinRuleTests.swift feat(coding): add scalar typed conversion 2026-06-05 11:45:00 +02:00
ValidationCorpusFixtures.swift feat(parser): expand YAML merge keys 2026-06-05 15:12:55 +02:00
ValidationCorpusSupport.swift test(validation): expand fixture corpus 2026-06-05 14:29:52 +02:00
ValidationCorpusTests.swift test(validation): expand fixture corpus 2026-06-05 14:29:52 +02:00
ValidationFailureFixtureTests.swift Harden parser against real YAML fixtures 2026-06-05 19:34:30 +02:00
ValidationModelTests.swift feat(coding): add scalar typed conversion 2026-06-05 11:45:00 +02:00
ValidationModeTests.swift feat(coding): add scalar typed conversion 2026-06-05 11:45:00 +02:00
ValidationReportTests.swift feat(parser): harden diagnostics and streaming 2026-06-06 07:57:48 +02:00
ValidationTests.swift feat(validation): add predicate-gated rules 2026-06-05 11:21:23 +02:00
ValidationTestSupport.swift test(validation): harden diagnostics corpus 2026-06-05 10:46:28 +02:00
YAMLTestSuiteGapsTests.swift test(conformance): track all 402 suite cases; fix 3 regressions 2026-06-24 00:16:28 +02:00