mirror of
https://github.com/bckelley/tconnectsync.git
synced 2026-08-24 03:34:12 -05:00
TConnectApi and TandemSourceApi defaulted their region parameter to a hardcoded 'US', so callers that construct them without an explicit region (e.g. tconnectsync-heroku's check_login path) sent EU accounts to the US login endpoint, which rejected them with HTTP 401 account/invalid_credentials even when TCONNECT_REGION=EU was set. Both classes (and fetch_oneshot) now fall back to the configured TCONNECT_REGION when no region argument is given, so downstream consumers honor the .env/environment configuration. Adds top-level integration tests that configure the EU region via each supported mechanism (TCONNECT_REGION environment variable, .env file, and --region CLI flag) and drive the real downstream code -- including the full main(['--check-login']) entrypoint -- against a mocked HTTP layer with a real RS256-signed OIDC id_token. Only the EU endpoints are registered, and the tests assert the EU login/token/jwks/pumper/ pump-logs endpoints are actually invoked and that no US host is ever contacted. Fixes #152 Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_012DEvvZSWHo2dki5h1HikUU