Add TLS integration tests#80
Merged
jappeace merged 4 commits intoApr 3, 2026
Merged
Conversation
Three new end-to-end tests exercising Database.MySQL.TLS: - connectDetail + SELECT 1 with greeting version check - verify encryption active via SHOW STATUS LIKE 'Ssl_cipher' - prepared statement roundtrip over TLS Tests are gated on MYSQL_TLS_CA_PATH env var (only run in NixOS VMs). Both MariaDB and MySQL 8.0 VMs now configure server-side TLS with the test certificates and pass the CA path to the integration binary. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
jappeace-sloth
pushed a commit
to jappeace-sloth/mysql-haskell
that referenced
this pull request
Apr 3, 2026
TLS tests extracted into their own PR to keep this branch focused on the crypton-to-botan hashing replacement. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- New Sha1Scramble test module with property and golden tests - Add golden vectors to existing Sha256Scramble tests - Golden values pin the scramble output so any hash implementation change (e.g. crypton to botan) can be verified against them Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
base16-1.0 (transitive dep of base16-bytestring) fails to build on GHC >= 9.8. Replace with a simple hexToBytes helper in each test module. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Previous CI failure was a flaky Windows file permission error, not a real build issue. Replace inline hexToBytes with base16-bytestring's decodeLenient. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Database.MySQL.TLS(connectDetail, cipher verification, prepared statements over TLS)MYSQL_TLS_CA_PATHenv var — only run in NixOS VM testsTest plan
nix-build nix/ci.nix -A build— typechecksnix-build nix/ci.nix -A integrated-checks— MariaDB VM with TLS testsnix-build nix/ci.nix -A integrated-checks-mysql80— MySQL 8.0 VM with TLS tests🤖 Generated with Claude Code