feat: implement automatic crediting of new accounts with 1 million satoshis
- Modified the user account creation process to automatically credit new accounts with 1,000,000 satoshis upon creation. - Updated the `create_user_account_no_ckeck` function to include error handling and logging for the credit operation. - Enhanced tests to verify the balance for newly registered users, ensuring the correct credit amount is applied. - Documented affected account creation paths and testing instructions in the new `AUTO_CREDIT_CHANGES.md` file. fix: pass db connection to update_wallet_balance to prevent SQLite deadlock The auto-credit feature was causing a deadlock on SQLite because update_wallet_balance was opening a new database connection while already inside a transaction. By passing conn=conn, we reuse the existing connection and avoid the deadlock. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
parent
17e698b623
commit
ab19685a2a
3 changed files with 105 additions and 0 deletions
|
|
@ -295,6 +295,10 @@ async def test_register_ok(http_client: AsyncClient):
|
|||
assert (
|
||||
len(user.wallets) == 1
|
||||
), f"Expected 1 default wallet, not {len(user.wallets)}."
|
||||
|
||||
# Check that the wallet has 1 million satoshis
|
||||
wallet = user.wallets[0]
|
||||
assert wallet.balance == 1_000_000, f"Expected 1,000,000 sats balance, got {wallet.balance} sats"
|
||||
|
||||
|
||||
@pytest.mark.anyio
|
||||
|
|
@ -588,6 +592,10 @@ async def test_register_nostr_ok(http_client: AsyncClient, settings: Settings):
|
|||
assert (
|
||||
len(user.wallets) == 1
|
||||
), f"Expected 1 default wallet, not {len(user.wallets)}."
|
||||
|
||||
# Check that the wallet has 1 million satoshis
|
||||
wallet = user.wallets[0]
|
||||
assert wallet.balance == 1_000_000, f"Expected 1,000,000 sats balance, got {wallet.balance} sats"
|
||||
|
||||
|
||||
@pytest.mark.anyio
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue