Restore Alex's test coverage without Docker#7
Conversation
| (HashMap.fromList [("present", Just 42), ("missing", Nothing)]) | ||
| ] | ||
|
|
||
| multiColumnTests :: Tasty.TestTree |
There was a problem hiding this comment.
[P2] Multi-column test no longer validates composed row encoders
This payload is assembled by concatenating four separately encoded fields, so the test never exercises Value composition via <> and contramap, which is how multi-column rows are actually encoded in the library. A bug in row encoder composition would still pass here, whereas the previous suite checked that composed row encoders and decoders worked together.
|
|
||
| valueRoundtripTests :: Tasty.TestTree | ||
| valueRoundtripTests = | ||
| stressTests :: Tasty.TestTree |
There was a problem hiding this comment.
[P2] Stress tests no longer cover repeated row decoding
The historical stress coverage focused on large numbers of rows, which exercised repeated row parsing and row-boundary handling. These replacements only roundtrip one large array and one large map, so they stop testing the multi-row decode path entirely. That is a meaningful coverage regression from the original suite the PR is trying to restore.
| (HashMap.fromList [("k" <> fromStringInt i, fromIntegral i) | i <- [1 .. 2000]]) | ||
| ] | ||
|
|
||
| wideTableSmoketest :: Tasty.TestTree |
There was a problem hiding this comment.
[P1] Wide smoketest coverage was removed
This replaces the historical wide-record smoketest with a single tuple7 roundtrip. The old test exercised the real composed encoder/decoder path across UUIDs, maps, nullable fields, nested arrays, long strings, and repeated rows. With this version, a regression in the actual wide-row path would pass unnoticed, so this does not really restore the previous coverage without Docker.
|
Pushed fixes addressing review notes:
Validation: cabal test all --test-show-details=direct (43/43 pass). |
|
Fixed the failing CI run. Root cause: GitHub Actions starts from a cold Cabal home, so the package index was missing and dependency resolution failed ( Change pushed:
The PR branch has been updated, so Actions should rerun automatically. |
Summary
mainWhat changed
test/Main.hsfrom the minimal smoke tests into a broader pure suite covering:hashable,uuid)Validation
cabal test all --test-show-details=directThis PR was generated with AI assistance from openai-codex/gpt-5.4