Skip to content

Add markdown feature parser - #353

Merged
cressie176 merged 2 commits into
masterfrom
markdown-feature-parser
Aug 15, 2026
Merged

cressie176 merged 2 commits into
masterfrom
markdown-feature-parser

Conversation

@cressie176

Copy link
Copy Markdown
Member

Summary

  • Adds MarkdownFeatureParser and MarkdownFeatureFileParser for parsing specifications written as GitHub-flavoured markdown, so they render nicely on GitHub.
  • Headings carry the keywords (# Feature:, ## Scenario:), steps are list items, doc-strings are fenced code blocks, and data/example tables are markdown tables. Comments use > blockquotes (visible callouts) or <!-- --> (hidden).
  • Emits the same events as FeatureParser into the shared state machine, so a markdown feature and its .feature equivalent parse to identical output. Common logic extracted into BaseFeatureParser and BaseFileParser.
  • Entities (&lt; etc.) are decoded in prose but left verbatim inside doc-strings; inline code spans are not yet exempt from decoding.
  • Includes a runnable examples/markdown/ package and unit tests covering every construct plus the markdown/.feature equivalence guarantee.

cressie176 and others added 2 commits August 15, 2026 11:38
Parse specifications written as GitHub-flavoured markdown so they render
nicely on GitHub. Headings carry the keywords, steps are list items,
doc-strings are fenced code blocks, tables are markdown tables, and
comments use `>` blockquotes (visible) or `<!-- -->` (hidden).

MarkdownFeatureParser emits the same events as FeatureParser into the
shared state machine, so a markdown feature and its .feature equivalent
parse to identical output. Common logic is extracted into
BaseFeatureParser and BaseFileParser.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@cressie176
cressie176 merged commit 98b615e into master Aug 15, 2026
4 checks passed
@cressie176
cressie176 deleted the markdown-feature-parser branch August 15, 2026 10:50
@codecov

codecov Bot commented Aug 15, 2026

Copy link
Copy Markdown

Welcome to Codecov 🎉

Once you merge this PR into your default branch, you're all set! Codecov will compare coverage reports and display results in all future pull requests.

Thanks for integrating Codecov - We've got you covered ☂️

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant