Skip to content

Commit

Permalink
fix workflow error
Browse files Browse the repository at this point in the history
  • Loading branch information
akintewe committed Jan 17, 2025
1 parent a0573d4 commit bb4c9f7
Show file tree
Hide file tree
Showing 3 changed files with 38 additions and 1 deletion.
2 changes: 1 addition & 1 deletion web_app/api/position.py
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@
from web_app.db.models import TransactionStatus

router = APIRouter() # Initialize the router
position_db_connector = PositionDBConnector() # Initialize the PositionDBConnector
position_db_connector = PositionDBConnector()
transaction_db_connector = TransactionDBConnector()

# Constants
Expand Down
25 changes: 25 additions & 0 deletions web_app/tests/conftest.py
Original file line number Diff line number Diff line change
Expand Up @@ -84,3 +84,28 @@ def mock_position_db_connector() -> None:
"""
mock_position_connector = MagicMock(spec=PositionDBConnector)
yield mock_position_connector


@pytest.fixture
def mock_extra_deposit():
"""Fixture for mocking ExtraDeposit instances"""
return ExtraDeposit(
id=uuid.uuid4(),
token_symbol="ETH",
amount="1.0",
position_id=uuid.uuid4()
)


@pytest.fixture
def mock_db_session(monkeypatch):
"""Fixture for mocking database session"""
mock_session = MagicMock()
mock_session.__enter__.return_value = mock_session
mock_session.__exit__.return_value = None

def mock_get_session():
return mock_session

monkeypatch.setattr("web_app.db.crud.position.Session", mock_get_session)
return mock_session
12 changes: 12 additions & 0 deletions web_app/tests/db/test_PositionDBConnector.py
Original file line number Diff line number Diff line change
Expand Up @@ -265,6 +265,18 @@ def test_delete_all_user_positions_success(mock_scoped_session_call):
mock_session.commit.assert_called_once()


def test_get_extra_deposits_data_success(mock_db_session, mock_extra_deposit):
"""Test successfully retrieving extra deposits data"""
position_id = uuid.uuid4()
mock_db_session.query.return_value.filter.return_value.all.return_value = [mock_extra_deposit]

position_connector = PositionDBConnector()
result = position_connector.get_extra_deposits_data(position_id)

assert result == {mock_extra_deposit.token_symbol: mock_extra_deposit.amount}
mock_db_session.query.assert_called_once()


### Negative Test Cases ###


Expand Down

0 comments on commit bb4c9f7

Please sign in to comment.