-
Stefy Lanza (nextime / spora ) authored
Bring several payments tests back in line with the current implementation: - test_wallet.py: mock self.db.begin() as an async context manager (was an AsyncMock coroutine) for credit/debit; update get_or_create_user_address to the new contract (legacy helper now allocates a fresh address per call). - test_wallet_renewal.py: SubscriptionRenewalProcessor now takes its gateway/ price collaborators explicitly (pass mocks); patch trigger_auto_topup at its real source aisbf.payments.scheduler; renewal DB cursor access is synchronous (MagicMock, not AsyncMock). - test_integration.py: use a valid Fernet encryption key; DatabaseManager takes a config dict (not db_type/db_path kwargs); decorate the async payment_service fixture with @pytest_asyncio.fixture (strict asyncio mode). - test_topup.py: use a valid Fernet encryption key. Payments suite: 31 not-passing (17 failed + 14 errors) -> 22 failed, 52 passed; remaining failures now surface real causes instead of setup errors. Co-Authored-By:Claude Opus 4.8 <noreply@anthropic.com>
794dbe03