feat: NCS-30 FEN Parser using ParserCombinators (#21)
Build & Test (NowChessSystems) TeamCity build finished
Build & Test (NowChessSystems) TeamCity build finished
Summary - Added scala-parser-combinators_3:2.4.0 dependency to modules/io - Implemented FenParserCombinators as an alternative FEN parser using RegexParsers, with the same public API as the existing FenParser - Parsers are built bottom-up: piece characters → rank tokens → rank → board, composed with explicit field separators into a full FEN parser - Added FenParserCombinatorsTest mirroring the existing FenParserTest to prove behavioural equivalence Test plan - All existing tests pass — FenParser and all other modules untouched - FenParserCombinatorsTest covers all cases: valid FEN, invalid color, invalid castling, invalid board shapes, en passant, round-trip via FenExporter - 100% line/branch/method coverage on FenParserCombinators Co-authored-by: LQ63 <lkhermann@web.de> Reviewed-on: #21 Reviewed-by: Janis <janis-e@gmx.de> Co-authored-by: Leon Hermann <lq@blackhole.local> Co-committed-by: Leon Hermann <lq@blackhole.local>
This commit was merged in pull request #21.
This commit is contained in:
+2
-1
@@ -32,7 +32,8 @@ val versions = mapOf(
|
||||
"SCOVERAGE" to "2.1.1",
|
||||
"SCALAFX" to "21.0.0-R32",
|
||||
"JAVAFX" to "21.0.1",
|
||||
"JUNIT_BOM" to "5.13.4"
|
||||
"JUNIT_BOM" to "5.13.4",
|
||||
"SCALA_PARSER_COMBINATORS" to "2.4.0"
|
||||
)
|
||||
extra["VERSIONS"] = versions
|
||||
|
||||
|
||||
Reference in New Issue
Block a user