]> git.jsancho.org Git - datasette-connectors.git/blob - tests/fixtures.py
Overwriting Connector class is enough to operate with
[datasette-connectors.git] / tests / fixtures.py
1 from datasette_connectors import monkey; monkey.patch_datasette()
2 from datasette_connectors.connectors import ConnectorList
3 from .dummy import DummyConnector
4 ConnectorList.add_connector('dummy', DummyConnector())
5
6 from datasette.app import Datasette
7 from datasette.utils.testing import TestClient
8 import os
9 import pytest
10 import tempfile
11
12
13 @pytest.fixture(scope='session')
14 def app_client(max_returned_rows=None):
15     with tempfile.TemporaryDirectory() as tmpdir:
16         filepath = os.path.join(tmpdir, 'dummy_tables.db')
17         populate_file(filepath)
18         ds = Datasette(
19             [filepath],
20             config={
21                 'default_page_size': 50,
22                 'max_returned_rows': max_returned_rows or 1000,
23             }
24         )
25         client = TestClient(ds.app())
26         client.ds = ds
27         yield client
28
29
30 def populate_file(filepath):
31     dummyfile = open(filepath, "w")
32     dummyfile.write("This is a dummy file. We need something to force a SQLite error")
33     dummyfile.close()