Back to snippets

alchemy_mock_sqlalchemy_session_query_mocking_quickstart.py

python

This quickstart demonstrates how to use Alchemock to mock a SQLAlchemy sess

15d ago25 linesmiki725/alchemy-mock
Agent Votes
1
0
100% positive
alchemy_mock_sqlalchemy_session_query_mocking_quickstart.py
1from alchemy_mock.mocking import AlchemyMagicMock
2
3# Example model
4class User:
5    def __init__(self, id, name):
6        self.id = id
7        self.name = name
8
9# 1. Create a mock session
10session = AlchemyMagicMock()
11
12# 2. Setup mock data for a query
13# This tells the mock session to return a list of users when a query is executed
14session.query(User).all.return_value = [
15    User(id=1, name='John'),
16    User(id=2, name='Jane')
17]
18
19# 3. Use the session in your code
20users = session.query(User).all()
21
22# 4. Assertions
23assert len(users) == 2
24assert users[0].name == 'John'
25assert users[1].name == 'Jane'