PureYAML/Tests
Mihaela M 143624be08 fix(parsing): fold an explicit key ending at its value colon
A plain scalar continuation that ends at a `:` is normally a new implicit
mapping key, so the scalar stops before it. Under an explicit key (`? foo`
then `bar :`) the `:` is the key's own value indicator instead, so the line is
still key content. The scalar dropped that line and the parser stalled, so
`? foo` then `bar : baz` failed rather than yielding the key `foo bar`.

When the explicit-key marker is pending, fold the continuation line in and
stop, leaving the `:` to be scanned as the value indicator. An implicit key
keeps the previous behaviour, so a continuation ending at `:` still begins a
new key.

The test-suite rates are unchanged, since no comparable case isolates the
block form and the flow form needs separate explicit-key work, but block
explicit keys spanning lines now fold correctly. 466 tests pass.
2026-06-29 00:59:18 +02:00
..
Fixtures test(corpus): add public real yaml seeds 2026-06-06 08:24:12 +02:00
ACMEZephyrFixtureTests.swift
AdditionalCoverageTests.swift test: cover the remaining low-level paths 2026-06-26 08:59:24 +02:00
AliasPropertiesTests.swift fix(parsing): reject an anchor or tag on an alias node 2026-06-27 21:11:10 +02:00
AnchoredIndentedNodeParsingTests.swift
AnchoredMappingKeyTests.swift fix(parsing): allow an anchor or tag on a non-first mapping key 2026-06-27 00:21:38 +02:00
ArbitraryAnyDecisionTests.swift
BareDocumentAfterEndTests.swift fix(parsing): parse a bare document after a document-end marker 2026-06-28 04:23:06 +02:00
BlockEntryAfterFlowTests.swift fix(parsing): reject a block entry after a flow collection on a line 2026-06-28 01:34:55 +02:00
BlockScalarChompingTests.swift fix(parsing): preserve leading blank lines in block scalars 2026-06-26 08:42:16 +02:00
BlockScalarIndentIndicatorTests.swift fix(parsing): base an inline-mapping indent indicator on the mapping 2026-06-28 23:24:21 +02:00
BlockScalarLeadingBlankTests.swift fix(parsing): reject an over-indented leading line in a block scalar 2026-06-28 00:21:57 +02:00
BlockScalarTabContentTests.swift fix(parsing): keep tabs in block scalar content verbatim 2026-06-28 20:53:40 +02:00
BlockScalarTrailingCommentTests.swift fix(parsing): comments and over-indented blanks ending block scalars 2026-06-27 15:34:13 +02:00
BlockSequenceAfterPropertyTests.swift fix(parsing): reject a block sequence inline after a node property 2026-06-27 23:14:54 +02:00
CodableCompatibilityFixtures.swift
CodableCompatibilityTests.swift
CodableTypeMatrixTests.swift test: round-trip the full scalar type matrix through Codable containers 2026-06-26 09:04:54 +02:00
CodingTests.swift
CollectionCompatibilityFixtures.swift
CommentInPlainScalarTests.swift fix(parsing): reject a comment interrupting a multi-line plain scalar 2026-06-27 19:47:28 +02:00
CommentWhitespaceTests.swift fix(parsing): reject a comment glued to earlier content on its line 2026-06-27 15:53:16 +02:00
CompactNestedSequenceTests.swift fix(parsing): bound a block sequence to its own column for siblings 2026-06-28 22:37:36 +02:00
ComplexMappingKeyCodableTests.swift
ComplexMappingKeyDumperTests.swift
ComplexMappingKeyParsingTests.swift fix(parsing): an explicit key with no value maps to null 2026-06-26 22:28:13 +02:00
ComplexMappingKeyTestSupport.swift
ComplexMappingKeyValidationTests.swift
DiagnosticValidationReportTests.swift
DirectiveAfterDocumentEndTests.swift fix(parsing): allow a directive after a document-end marker 2026-06-28 02:09:01 +02:00
DirectiveTests.swift fix(parsing): require an explicit document after a directive 2026-06-27 17:18:47 +02:00
DocumentationExampleTests.swift
DocumentEndContentTests.swift fix(parsing): reject content after a document end marker 2026-06-27 17:56:37 +02:00
DocumentMarkerInScalarTests.swift fix(parsing): reject a document marker inside a multi-line scalar 2026-06-27 23:20:52 +02:00
DocumentMarkerNodeTests.swift fix(parsing): fold a document-root plain scalar across column-1 lines 2026-06-26 21:30:49 +02:00
DoubleQuotedEscapeTests.swift fix(parsing): enforce the full YAML 1.2 double-quoted escape table 2026-06-27 16:19:25 +02:00
DoubleQuotedFoldingTests.swift fix(parsing): fold line breaks in multi-line double-quoted scalars 2026-06-26 21:13:13 +02:00
DownstreamDocumentFixtures.swift
DownstreamDocumentTests.swift
DumperEmptyCollectionTests.swift
DumperTests.swift
EmitterCorpusTests.swift
EmptyBlockScalarChompingTests.swift fix(parsing): chomp the blank lines of an empty block scalar 2026-06-28 22:31:09 +02:00
EmptyTaggedNodeTests.swift fix(parsing): treat a dangling anchor or tag as an empty node 2026-06-28 03:21:04 +02:00
EventStreamingParserTests.swift
ExplicitKeyMultilineFoldTests.swift fix(parsing): fold an explicit key ending at its value colon 2026-06-29 00:59:18 +02:00
ExplicitKeyTests.swift fix(parsing): an explicit key with no value maps to null 2026-06-26 22:28:13 +02:00
FlowCollectionAsMappingKeyTests.swift fix(parsing): parse a flow collection before a colon as a mapping key 2026-06-28 18:34:11 +02:00
FlowDashScalarTests.swift fix(parsing): reject a lone dash before a flow indicator 2026-06-28 01:00:57 +02:00
FlowEmptyEntryTests.swift fix(parsing): reject empty entries in flow collections 2026-06-27 16:26:46 +02:00
FlowMappingEmptyKeyTests.swift fix(parsing): allow an empty key in a flow mapping 2026-06-28 19:23:49 +02:00
FlowSequenceEmptyKeyTests.swift fix(parsing): treat colon-led flow sequence element as empty-key map 2026-06-28 19:43:56 +02:00
FoldedScalarBlankLineTests.swift fix(parsing): keep both breaks at a folded blank by a more-indented line 2026-06-28 21:14:14 +02:00
ImplicitNullKeyTests.swift fix(parsing): parse implicit null mapping keys 2026-06-28 02:53:45 +02:00
IndicatorTabBoundaryTests.swift fix(parsing): skip tabs as mid-line separation white space 2026-06-28 20:35:04 +02:00
InlineBlockSequenceValueTests.swift fix(parsing): reject a block sequence inline as a mapping value 2026-06-27 18:35:58 +02:00
InlineNestedMappingTests.swift fix(parsing): reject inline nested block mappings 2026-06-27 18:28:57 +02:00
JSONCompatibilityTests.swift
KeyedCodingTests.swift
LiteralBlockEmissionFixtures.swift
MappingValueTabBoundaryTests.swift fix(parsing): accept a tab after the colon value indicator 2026-06-28 20:30:24 +02:00
MergeKeyCompatibilityTests.swift
ModelTests.swift
MultilineImplicitKeyTests.swift fix(parsing): reject a multiline quoted scalar as a block implicit key 2026-06-27 18:43:09 +02:00
NonCoreTagScalarResolutionTests.swift fix(parsing): keep a non-core-tagged scalar as a string 2026-06-28 22:25:48 +02:00
NumericCodingLadderTests.swift test: cover numeric ladder, NaN hashing, unkeyed edges, error paths 2026-06-26 07:50:08 +02:00
ParsingAliasTests.swift
ParsingCompatibilityTests.swift fix(parsing): keep a non-core-tagged scalar as a string 2026-06-28 22:25:48 +02:00
ParsingErrorPathTests.swift fix(parsing): treat a dangling anchor or tag as an empty node 2026-06-28 03:21:04 +02:00
ParsingErrorTests.swift refactor(parsing): remove three unreachable ParseError cases 2026-06-26 08:37:53 +02:00
ParsingEventTests.swift
ParsingIndentationRegressionTests.swift
ParsingMultilineScalarTests.swift fix(parsing): fold a plain scalar value that begins on its own line 2026-06-26 18:52:09 +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
PlainScalarTabCommentTests.swift fix(parsing): end a plain scalar at a tab before a comment 2026-06-28 21:24:59 +02:00
PlainScalarTabFoldingTests.swift fix(parsing): fold tabs in plain scalar continuation lines 2026-06-28 21:00:32 +02:00
PreflightScannerTests.swift
QuotedKeyTests.swift fix(parsing): allow a space before the colon of a quoted mapping key 2026-06-27 01:19:28 +02:00
RealYAMLCorpusPropertyTests.swift
RealYAMLCorpusTests.swift
RealYAMLFixtureTests.swift
RootBlockScalarIndentationTests.swift fix(parsing): fold root block scalars with column-0 content 2026-06-28 17:42:38 +02:00
RoundTripDemonstrationTests.swift test: demonstrate yaml/json parsing and generation round-trips 2026-06-08 00:13:56 +02:00
ScalarCompatibilityFixtures.swift
ScannerTests.swift fix(parsing): parse a bare document after a document-end marker 2026-06-28 04:23:06 +02:00
SingleQuotedFoldingTests.swift fix(parsing): fold line breaks in multi-line single-quoted scalars 2026-06-26 21:18:55 +02:00
StreamDumpingTests.swift
StreamParsingTests.swift fix(parsing): parse a bare document after a document-end marker 2026-06-28 04:23:06 +02:00
TaggedCompatibilityTests.swift fix(parsing): keep a non-core-tagged scalar as a string 2026-06-28 22:25:48 +02:00
TaggedConstructorTests.swift
TaggedKeyUniquenessTests.swift feat(validation): enforce tagged mapping-key uniqueness 2026-06-28 17:03:20 +02:00
TestSupport.swift
UnkeyedCodingFixtures.swift
UnkeyedCodingTests.swift
UnkeyedContainerEdgeTests.swift test: cover numeric ladder, NaN hashing, unkeyed edges, error paths 2026-06-26 07:50:08 +02:00
UnkeyedEncodingFixtures.swift
UnkeyedFailureFixtures.swift
UnsupportedYAMLGapsFixtures.swift fix(parsing): ignore an unrecognized directive instead of rejecting it 2026-06-26 22:20:18 +02:00
ValidationBuiltinRuleTests.swift refactor(validation): retire the legacy Rule for one check type 2026-06-28 16:43:31 +02:00
ValidationCheckMachineryTests.swift refactor(validation): fold the tagged validator onto one framework 2026-06-28 10:41:10 +02:00
ValidationCombinatorTests.swift refactor(validation): fold the tagged validator onto one framework 2026-06-28 10:41:10 +02:00
ValidationConfigurationTests.swift feat(validation): configure the validator by rule identity 2026-06-28 05:18:06 +02:00
ValidationCorpusFixtures.swift
ValidationCorpusSupport.swift refactor(validation): retire the legacy Rule for one check type 2026-06-28 16:43:31 +02:00
ValidationCorpusTests.swift
ValidationCoverageMetaTests.swift test(validation): extend the finding-coverage law to both layers 2026-06-28 17:10:03 +02:00
ValidationFailureFixtureTests.swift
ValidationModelTests.swift
ValidationModeTests.swift refactor(validation): retire the legacy Rule for one check type 2026-06-28 16:43:31 +02:00
ValidationReportTests.swift refactor(validation): retire the legacy Rule for one check type 2026-06-28 16:43:31 +02:00
ValidationTests.swift refactor(validation): retire the legacy Rule for one check type 2026-06-28 16:43:31 +02:00
ValidationTestSupport.swift refactor(validation): retire the legacy Rule for one check type 2026-06-28 16:43:31 +02:00
ValueHashableTests.swift test: cover numeric ladder, NaN hashing, unkeyed edges, error paths 2026-06-26 07:50:08 +02:00
ValuePropertyIndentationTests.swift fix(parsing): reject a later under-indented property on a mapping value 2026-06-28 01:44:48 +02:00
YAMLDirectiveTests.swift fix(parsing): require an explicit document after a directive 2026-06-27 17:18:47 +02:00
YAMLTestSuiteConformanceTests.swift test: add value-level YAML conformance against in.json 2026-06-26 20:18:32 +02:00