From fd4293f396b7d9fd9524963572b374b7e9c0da11 Mon Sep 17 00:00:00 2001 From: Abdulhakeem Date: Sat, 25 Jan 2025 16:56:11 +0100 Subject: [PATCH] Update seed_data.py updates the seed file --- web_app/db/seed_data.py | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/web_app/db/seed_data.py b/web_app/db/seed_data.py index 2f506d36b..d643a7550 100644 --- a/web_app/db/seed_data.py +++ b/web_app/db/seed_data.py @@ -18,6 +18,7 @@ TransactionStatus, User, Vault, + ExtraDeposit ) logging.basicConfig(level=logging.INFO) @@ -87,6 +88,34 @@ def create_positions(session: SessionLocal, users: list[User]) -> list[Position] logger.info("No positions created.") return positions +def create_extra_deposits(session: SessionLocal, positions: list[Position]) -> None: + """ + Create and save fake extra deposit records associated with given positions. + Args: + session (Session): SQLAlchemy session object. + positions (list): List of Position objects to associate with extra deposits. + """ + extra_deposits = [] + for position in positions: + num_deposits = fake.random_int(min=0, max=3) + for _ in range(num_deposits): + extra_deposit = ExtraDeposit( + position_id=position.id, + token_symbol=position.token_symbol, + amount=str( + fake.random_number(digits=5) + ), + added_at=fake.date_time_this_decade(), + ) + extra_deposits.append(extra_deposit) + + if extra_deposits: + session.bulk_save_objects(extra_deposits) + session.commit() + logger.info(f"Created {len(extra_deposits)} extra deposits for {len(positions)} positions.") + else: + logger.info("No extra deposits created.") + def create_airdrops(session: SessionLocal, users: list[User]) -> None: """