Three correctness fixes to ValidateDatabaseParametersCommand:
1. Bypass engines (bigquery, datastore, snowflake) now also surface
database_name uniqueness errors and SSH tunnel field errors during
progressive validation, instead of silently passing.
2. The SSH feature-flag and database-port guards now fire when the UI
marks parameters.ssh, not just when the ssh_tunnel payload is
non-empty — the form sends an empty tunnel object in early stages.
3. The "parameters are missing" message for SSH tunnel fields now
interpolates the %(missing)s placeholder via gettext, so the
response surfaces the actual missing fields instead of the literal
token.
Adds unit tests for each branch and removes the now-unused
_validate_database_name helper.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Adds unit tests for the duplicate-database-name check (create + update
paths, plus the bypass-engine path), the SSH tunnel feature-flag and
db-port guards, and the SSH tunnel field-level error collection
(missing required fields, missing credentials, private key without
password). Brings patch coverage on commands/database/validate.py up
from ~44%.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>