import pytest from unittest.mock import patch, MagicMock from app.api.deps import get_db def test_get_db_closes_session(): mock_session = MagicMock() with patch('app.api.deps.SessionLocal', return_value=mock_session): db_gen = get_db() db = next(db_gen) assert db == mock_session # Simulate an exception during request handling with pytest.raises(Exception): db_gen.throw(Exception("test error")) mock_session.close.assert_called_once()