Add minimal Cooklang parser with first tests

- Create Roux.Parser with parseCookFile (splits paragraphs, treats
  each as a plain-text step, no metadata parsing yet)
- Add emptyMetadata to Roux.Types for convenience
- Add test dependencies: hspec, tasty-golden, tasty-hspec
- Add ParserSpec with 4 tests covering single step, multiple steps,
  empty input, and whitespace trimming
- Wire ParserSpec into test runner via tasty-hspec
This commit is contained in:
2026-05-18 22:21:32 -04:00
parent e907a03b09
commit 235adce596
6 changed files with 149 additions and 2 deletions
+5
View File
@@ -17,6 +17,7 @@ build-type: Simple
library
exposed-modules:
Roux
Roux.Parser
Roux.Types
other-modules:
Paths_roux_server
@@ -78,6 +79,7 @@ test-suite roux-server-test
type: exitcode-stdio-1.0
main-is: Spec.hs
other-modules:
Roux.ParserSpec
Paths_roux_server
autogen-modules:
Paths_roux_server
@@ -94,11 +96,14 @@ test-suite roux-server-test
, bytestring
, containers
, directory
, hspec
, http-types
, optparse-applicative
, parsec
, roux-server
, tasty
, tasty-golden
, tasty-hspec
, tasty-hunit
, text
, time