Add bitcoin_transfer_method field to Exchange model with default value

This commit is contained in:
counterweight 2025-12-23 14:34:22 +01:00
parent 0669f951bf
commit e1c7c5209f
Signed by: counterweight
GPG key ID: 883EDBAA726BD96C
2 changed files with 18 additions and 1 deletions

View file

@ -346,6 +346,11 @@ class Exchange(Base):
direction: Mapped[TradeDirection] = mapped_column( direction: Mapped[TradeDirection] = mapped_column(
Enum(TradeDirection), nullable=False Enum(TradeDirection), nullable=False
) )
bitcoin_transfer_method: Mapped[BitcoinTransferMethod] = mapped_column(
Enum(BitcoinTransferMethod),
nullable=False,
default=BitcoinTransferMethod.ONCHAIN,
)
eur_amount: Mapped[int] = mapped_column(Integer, nullable=False) # EUR cents eur_amount: Mapped[int] = mapped_column(Integer, nullable=False) # EUR cents
sats_amount: Mapped[int] = mapped_column(Integer, nullable=False) # Satoshis sats_amount: Mapped[int] = mapped_column(Integer, nullable=False) # Satoshis

View file

@ -9,7 +9,13 @@ from unittest.mock import patch
import pytest import pytest
from models import Exchange, ExchangeStatus, PriceHistory, TradeDirection from models import (
BitcoinTransferMethod,
Exchange,
ExchangeStatus,
PriceHistory,
TradeDirection,
)
from price_fetcher import PAIR_BTC_EUR, SOURCE_BITFINEX from price_fetcher import PAIR_BTC_EUR, SOURCE_BITFINEX
@ -621,6 +627,7 @@ class TestCancelTrade:
slot_start=past_time, slot_start=past_time,
slot_end=past_time + timedelta(minutes=15), slot_end=past_time + timedelta(minutes=15),
direction=TradeDirection.BUY, direction=TradeDirection.BUY,
bitcoin_transfer_method=BitcoinTransferMethod.ONCHAIN,
eur_amount=10000, eur_amount=10000,
sats_amount=500000, sats_amount=500000,
market_price_eur=20000.0, market_price_eur=20000.0,
@ -707,6 +714,7 @@ class TestAdminPastTrades:
slot_start=past_time, slot_start=past_time,
slot_end=past_time + timedelta(minutes=15), slot_end=past_time + timedelta(minutes=15),
direction=TradeDirection.BUY, direction=TradeDirection.BUY,
bitcoin_transfer_method=BitcoinTransferMethod.ONCHAIN,
eur_amount=10000, eur_amount=10000,
sats_amount=500000, sats_amount=500000,
market_price_eur=20000.0, market_price_eur=20000.0,
@ -742,6 +750,7 @@ class TestAdminCompleteTrade:
slot_start=past_time, slot_start=past_time,
slot_end=past_time + timedelta(minutes=15), slot_end=past_time + timedelta(minutes=15),
direction=TradeDirection.BUY, direction=TradeDirection.BUY,
bitcoin_transfer_method=BitcoinTransferMethod.ONCHAIN,
eur_amount=10000, eur_amount=10000,
sats_amount=500000, sats_amount=500000,
market_price_eur=20000.0, market_price_eur=20000.0,
@ -803,6 +812,7 @@ class TestAdminCompleteTrade:
slot_start=past_time, slot_start=past_time,
slot_end=past_time + timedelta(minutes=15), slot_end=past_time + timedelta(minutes=15),
direction=TradeDirection.BUY, direction=TradeDirection.BUY,
bitcoin_transfer_method=BitcoinTransferMethod.ONCHAIN,
eur_amount=10000, eur_amount=10000,
sats_amount=500000, sats_amount=500000,
market_price_eur=20000.0, market_price_eur=20000.0,
@ -834,6 +844,7 @@ class TestAdminCompleteTrade:
slot_start=past_time, slot_start=past_time,
slot_end=past_time + timedelta(minutes=15), slot_end=past_time + timedelta(minutes=15),
direction=TradeDirection.BUY, direction=TradeDirection.BUY,
bitcoin_transfer_method=BitcoinTransferMethod.ONCHAIN,
eur_amount=10000, eur_amount=10000,
sats_amount=500000, sats_amount=500000,
market_price_eur=20000.0, market_price_eur=20000.0,
@ -869,6 +880,7 @@ class TestAdminNoShowTrade:
slot_start=past_time, slot_start=past_time,
slot_end=past_time + timedelta(minutes=15), slot_end=past_time + timedelta(minutes=15),
direction=TradeDirection.BUY, direction=TradeDirection.BUY,
bitcoin_transfer_method=BitcoinTransferMethod.ONCHAIN,
eur_amount=10000, eur_amount=10000,
sats_amount=500000, sats_amount=500000,
market_price_eur=20000.0, market_price_eur=20000.0,