Skip to content

Add YAML 1.2.2 Chapter 2 spec-compliance test harness #20

Description

Why

Tracking YAML 1.2.2 spec coverage needs a single visible scoreboard so contributors can see what's supported today and what's deferred to a follow-up issue.

What

Add tests/Spec-1.2.2.Tests.ps1 with one Pester It per example from YAML 1.2.2 spec Chapter 2. Each test name includes the example number and title (e.g. Example 2.4 - Sequence of Mappings). Tests for examples that already pass run; tests for unsupported examples are marked -Skip with a comment referencing the tracking issue.

Scoreboard

#TitleStatusTracked by
2.1Sequence of Scalars✅ supported
2.2Mapping Scalars to Scalars✅ supported
2.3Mapping Scalars to Sequences✅ supported
2.4Sequence of Mappings✅ supported
2.5Sequence of Sequences (flow)❌ deferred#7
2.6Mapping of Mappings (flow)❌ deferred#27
2.7Two Documents in a Stream❌ deferred#21
2.8Play by Play Feed (multi-doc)❌ deferred#21
2.9Single Document with Two Comments✅ supported
2.10Anchors and Aliases❌ deferred#22
2.11Mapping between Sequences (? key)❌ deferred#25
2.12Compact Nested Mapping⚠️ verify
2.13Literal block scalar❌ deferred#8
2.14Folded block scalar❌ deferred#8
2.15Folded — more-indented lines❌ deferred#8
2.16Indentation determines scope❌ deferred#8
2.17Quoted Scalars✅ supported
2.18Multi-line Flow Scalars❌ deferred#8
2.19Integers (octal, hex)❌ deferred#26
2.20Floating Point (.inf, .nan)❌ deferred#26
2.21Miscellaneous✅ supported
2.22Timestamps❌ deferred#23
2.23Various Explicit Tags❌ deferred#24
2.24Global Tags❌ deferred#24
2.25Unordered Sets (!!set)❌ deferred#24
2.26Ordered Mappings (!!omap)❌ deferred#24
2.27Invoice (full-length)❌ deferreddepends on #22, #24, #8
2.28Log File (multi-doc)❌ deferreddepends on #21, #8

Acceptance criteria

  • tests/Spec-1.2.2.Tests.ps1 exists and contains all 28 Chapter 2 examples
  • Tests for ✅ rows pass without -Skip
  • Tests for ❌ rows are present but -Skip-ped, each with a comment linking to the tracking issue
  • README references the spec test file as the source of truth for coverage

Metadata

Metadata

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions