mirror of
https://github.com/simonw/datasette.git
synced 2025-12-10 16:51:24 +01:00
Configured and applied isort, refs #516
This commit is contained in:
parent
17ec309e14
commit
59a5d336bd
78 changed files with 435 additions and 352 deletions
|
|
@ -1,15 +1,15 @@
|
|||
import asyncio
|
||||
import httpx
|
||||
import os
|
||||
import pathlib
|
||||
import pytest
|
||||
import pytest_asyncio
|
||||
import re
|
||||
import subprocess
|
||||
import tempfile
|
||||
import time
|
||||
import trustme
|
||||
|
||||
import httpx
|
||||
import pytest
|
||||
import pytest_asyncio
|
||||
import trustme
|
||||
|
||||
try:
|
||||
import pysqlite3 as sqlite3
|
||||
|
|
@ -41,6 +41,7 @@ def wait_until_responds(url, timeout=5.0, client=httpx, **kwargs):
|
|||
@pytest_asyncio.fixture
|
||||
async def ds_client():
|
||||
from datasette.app import Datasette
|
||||
|
||||
from .fixtures import METADATA, PLUGINS_DIR
|
||||
|
||||
global _ds_client
|
||||
|
|
@ -59,7 +60,7 @@ async def ds_client():
|
|||
"num_sql_threads": 1,
|
||||
},
|
||||
)
|
||||
from .fixtures import TABLES, TABLE_PARAMETERIZED_SQL
|
||||
from .fixtures import TABLE_PARAMETERIZED_SQL, TABLES
|
||||
|
||||
db = ds.add_memory_database("fixtures")
|
||||
ds.remove_database("_memory")
|
||||
|
|
|
|||
|
|
@ -1,18 +1,19 @@
|
|||
from datasette.app import Datasette
|
||||
from datasette.utils.sqlite import sqlite3
|
||||
from datasette.utils.testing import TestClient
|
||||
import click
|
||||
import contextlib
|
||||
import itertools
|
||||
import json
|
||||
import os
|
||||
import pathlib
|
||||
import pytest
|
||||
import random
|
||||
import string
|
||||
import tempfile
|
||||
import textwrap
|
||||
|
||||
import click
|
||||
import pytest
|
||||
|
||||
from datasette.app import Datasette
|
||||
from datasette.utils.sqlite import sqlite3
|
||||
from datasette.utils.testing import TestClient
|
||||
|
||||
# This temp file is used by one of the plugin config tests
|
||||
TEMP_PLUGIN_SECRET_FILE = os.path.join(tempfile.gettempdir(), "plugin-secret")
|
||||
|
|
|
|||
|
|
@ -1,13 +1,14 @@
|
|||
import asyncio
|
||||
from datasette import hookimpl, Permission
|
||||
from datasette.facets import Facet
|
||||
from datasette import tracer
|
||||
from datasette.utils import path_with_added_args
|
||||
from datasette.utils.asgi import asgi_send_json, Response
|
||||
import base64
|
||||
import pint
|
||||
import json
|
||||
|
||||
import pint
|
||||
|
||||
from datasette import Permission, hookimpl, tracer
|
||||
from datasette.facets import Facet
|
||||
from datasette.utils import path_with_added_args
|
||||
from datasette.utils.asgi import Response, asgi_send_json
|
||||
|
||||
ureg = pint.UnitRegistry()
|
||||
|
||||
|
||||
|
|
@ -326,11 +327,7 @@ def startup(datasette):
|
|||
datasette._startup_hook_fired = True
|
||||
|
||||
# And test some import shortcuts too
|
||||
from datasette import Response
|
||||
from datasette import Forbidden
|
||||
from datasette import NotFound
|
||||
from datasette import hookimpl
|
||||
from datasette import actor_matches_allow
|
||||
from datasette import Forbidden, NotFound, Response, actor_matches_allow, hookimpl
|
||||
|
||||
_ = (Response, Forbidden, NotFound, hookimpl, actor_matches_allow)
|
||||
|
||||
|
|
|
|||
|
|
@ -1,8 +1,10 @@
|
|||
import json
|
||||
from functools import wraps
|
||||
|
||||
import markupsafe
|
||||
|
||||
from datasette import hookimpl
|
||||
from datasette.utils.asgi import Response
|
||||
from functools import wraps
|
||||
import markupsafe
|
||||
import json
|
||||
|
||||
|
||||
@hookimpl
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
import json
|
||||
|
||||
from datasette import hookimpl
|
||||
from datasette.utils.asgi import Response
|
||||
import json
|
||||
|
||||
|
||||
async def can_render(
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
from datasette import hookimpl
|
||||
import time
|
||||
|
||||
from datasette import hookimpl
|
||||
|
||||
|
||||
@hookimpl
|
||||
def prepare_connection(conn):
|
||||
|
|
|
|||
|
|
@ -1,26 +1,29 @@
|
|||
import pathlib
|
||||
import sys
|
||||
import urllib
|
||||
|
||||
import pytest
|
||||
|
||||
from datasette.app import Datasette
|
||||
from datasette.plugins import DEFAULT_PLUGINS
|
||||
from datasette.utils.sqlite import supports_table_xinfo
|
||||
from datasette.version import __version__
|
||||
|
||||
from .fixtures import ( # noqa
|
||||
app_client,
|
||||
app_client_no_files,
|
||||
app_client_with_dot,
|
||||
app_client_shorter_time_limit,
|
||||
app_client_two_attached_databases_one_immutable,
|
||||
app_client_larger_cache_size,
|
||||
app_client_with_cors,
|
||||
app_client_two_attached_databases,
|
||||
app_client_conflicting_database_names,
|
||||
app_client_immutable_and_inspect_file,
|
||||
make_app_client,
|
||||
EXPECTED_PLUGINS,
|
||||
METADATA,
|
||||
app_client,
|
||||
app_client_conflicting_database_names,
|
||||
app_client_immutable_and_inspect_file,
|
||||
app_client_larger_cache_size,
|
||||
app_client_no_files,
|
||||
app_client_shorter_time_limit,
|
||||
app_client_two_attached_databases,
|
||||
app_client_two_attached_databases_one_immutable,
|
||||
app_client_with_cors,
|
||||
app_client_with_dot,
|
||||
make_app_client,
|
||||
)
|
||||
import pathlib
|
||||
import pytest
|
||||
import sys
|
||||
import urllib
|
||||
|
||||
|
||||
@pytest.mark.asyncio
|
||||
|
|
|
|||
|
|
@ -1,7 +1,9 @@
|
|||
import time
|
||||
|
||||
import pytest
|
||||
|
||||
from datasette.app import Datasette
|
||||
from datasette.utils import sqlite3
|
||||
import pytest
|
||||
import time
|
||||
|
||||
|
||||
@pytest.fixture
|
||||
|
|
|
|||
|
|
@ -1,11 +1,14 @@
|
|||
import time
|
||||
|
||||
import pytest
|
||||
from bs4 import BeautifulSoup as Soup
|
||||
from click.testing import CliRunner
|
||||
|
||||
from datasette.cli import cli
|
||||
from datasette.utils import baseconv
|
||||
|
||||
from .fixtures import app_client
|
||||
from .utils import cookie_was_deleted
|
||||
from click.testing import CliRunner
|
||||
from datasette.utils import baseconv
|
||||
from datasette.cli import cli
|
||||
import pytest
|
||||
import time
|
||||
|
||||
|
||||
@pytest.mark.asyncio
|
||||
|
|
|
|||
|
|
@ -1,8 +1,10 @@
|
|||
from datasette.views.base import View
|
||||
import json
|
||||
|
||||
import pytest
|
||||
|
||||
from datasette import Request, Response
|
||||
from datasette.app import Datasette
|
||||
import json
|
||||
import pytest
|
||||
from datasette.views.base import View
|
||||
|
||||
|
||||
class GetView(View):
|
||||
|
|
|
|||
|
|
@ -1,8 +1,9 @@
|
|||
import black
|
||||
from click.testing import CliRunner
|
||||
from pathlib import Path
|
||||
import pytest
|
||||
import sys
|
||||
from pathlib import Path
|
||||
|
||||
import black
|
||||
import pytest
|
||||
from click.testing import CliRunner
|
||||
|
||||
code_root = Path(__file__).parent.parent
|
||||
|
||||
|
|
|
|||
|
|
@ -1,8 +1,10 @@
|
|||
from bs4 import BeautifulSoup as Soup
|
||||
import json
|
||||
import pytest
|
||||
import re
|
||||
from .fixtures import make_app_client, app_client
|
||||
|
||||
import pytest
|
||||
from bs4 import BeautifulSoup as Soup
|
||||
|
||||
from .fixtures import app_client, make_app_client
|
||||
|
||||
|
||||
@pytest.fixture
|
||||
|
|
|
|||
|
|
@ -1,25 +1,25 @@
|
|||
from .fixtures import (
|
||||
app_client,
|
||||
make_app_client,
|
||||
TestClient as _TestClient,
|
||||
EXPECTED_PLUGINS,
|
||||
)
|
||||
import asyncio
|
||||
from datasette.app import SETTINGS
|
||||
from datasette.plugins import DEFAULT_PLUGINS
|
||||
from datasette.cli import cli, serve
|
||||
from datasette.version import __version__
|
||||
from datasette.utils import tilde_encode
|
||||
from datasette.utils.sqlite import sqlite3
|
||||
from click.testing import CliRunner
|
||||
import io
|
||||
import json
|
||||
import pathlib
|
||||
import pytest
|
||||
import sys
|
||||
import textwrap
|
||||
from unittest import mock
|
||||
import urllib
|
||||
from unittest import mock
|
||||
|
||||
import pytest
|
||||
from click.testing import CliRunner
|
||||
|
||||
from datasette.app import SETTINGS
|
||||
from datasette.cli import cli, serve
|
||||
from datasette.plugins import DEFAULT_PLUGINS
|
||||
from datasette.utils import tilde_encode
|
||||
from datasette.utils.sqlite import sqlite3
|
||||
from datasette.version import __version__
|
||||
|
||||
from .fixtures import EXPECTED_PLUGINS
|
||||
from .fixtures import TestClient as _TestClient
|
||||
from .fixtures import app_client, make_app_client
|
||||
|
||||
|
||||
def test_inspect_cli(app_client):
|
||||
|
|
|
|||
|
|
@ -1,8 +1,10 @@
|
|||
import json
|
||||
import textwrap
|
||||
|
||||
from click.testing import CliRunner
|
||||
|
||||
from datasette.cli import cli, serve
|
||||
from datasette.plugins import pm
|
||||
from click.testing import CliRunner
|
||||
import textwrap
|
||||
import json
|
||||
|
||||
|
||||
def test_serve_with_get(tmp_path_factory):
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
import socket
|
||||
|
||||
import httpx
|
||||
import pytest
|
||||
import socket
|
||||
|
||||
|
||||
@pytest.mark.serial
|
||||
|
|
|
|||
|
|
@ -1,13 +1,15 @@
|
|||
import json
|
||||
import pathlib
|
||||
|
||||
import pytest
|
||||
from click.testing import CliRunner
|
||||
|
||||
from datasette.app import Datasette
|
||||
from datasette.cli import cli
|
||||
from datasette.utils.sqlite import sqlite3
|
||||
from datasette.utils import StartupError
|
||||
from datasette.utils.sqlite import sqlite3
|
||||
|
||||
from .fixtures import TestClient as _TestClient
|
||||
from click.testing import CliRunner
|
||||
|
||||
PLUGIN = """
|
||||
from datasette import hookimpl
|
||||
|
|
|
|||
|
|
@ -1,7 +1,10 @@
|
|||
from datasette.cli import cli
|
||||
from click.testing import CliRunner
|
||||
import urllib
|
||||
import sqlite3
|
||||
import urllib
|
||||
|
||||
from click.testing import CliRunner
|
||||
|
||||
from datasette.cli import cli
|
||||
|
||||
from .fixtures import app_client_two_attached_databases_crossdb_enabled
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -1,12 +1,14 @@
|
|||
from bs4 import BeautifulSoup as Soup
|
||||
import urllib.parse
|
||||
|
||||
import pytest
|
||||
from bs4 import BeautifulSoup as Soup
|
||||
|
||||
from .fixtures import ( # noqa
|
||||
app_client,
|
||||
app_client_csv_max_mb_one,
|
||||
app_client_with_cors,
|
||||
app_client_with_trace,
|
||||
)
|
||||
import urllib.parse
|
||||
|
||||
EXPECTED_TABLE_CSV = """id,content
|
||||
1,hello
|
||||
|
|
|
|||
|
|
@ -1,5 +1,7 @@
|
|||
import pathlib
|
||||
|
||||
import pytest
|
||||
|
||||
from .fixtures import make_app_client
|
||||
|
||||
TEST_TEMPLATE_DIRS = str(pathlib.Path(__file__).parent / "test_templates")
|
||||
|
|
|
|||
|
|
@ -1,13 +1,15 @@
|
|||
"""
|
||||
Tests to ensure certain things are documented.
|
||||
"""
|
||||
import re
|
||||
from pathlib import Path
|
||||
|
||||
import pytest
|
||||
from click.testing import CliRunner
|
||||
|
||||
from datasette import app, utils
|
||||
from datasette.cli import cli
|
||||
from datasette.filters import Filters
|
||||
from pathlib import Path
|
||||
import pytest
|
||||
import re
|
||||
|
||||
docs_path = Path(__file__).parent.parent / "docs"
|
||||
label_re = re.compile(r"\.\. _([^\s:]+):")
|
||||
|
|
|
|||
|
|
@ -1,11 +1,14 @@
|
|||
import json
|
||||
|
||||
import pytest
|
||||
|
||||
from datasette.app import Datasette
|
||||
from datasette.database import Database
|
||||
from datasette.facets import ColumnFacet, ArrayFacet, DateFacet
|
||||
from datasette.utils.asgi import Request
|
||||
from datasette.facets import ArrayFacet, ColumnFacet, DateFacet
|
||||
from datasette.utils import detect_json1
|
||||
from datasette.utils.asgi import Request
|
||||
|
||||
from .fixtures import make_app_client
|
||||
import json
|
||||
import pytest
|
||||
|
||||
|
||||
@pytest.mark.asyncio
|
||||
|
|
|
|||
|
|
@ -1,7 +1,8 @@
|
|||
from datasette.filters import Filters, through_filters, where_filters, search_filters
|
||||
from datasette.utils.asgi import Request
|
||||
import pytest
|
||||
|
||||
from datasette.filters import Filters, search_filters, through_filters, where_filters
|
||||
from datasette.utils.asgi import Request
|
||||
|
||||
|
||||
@pytest.mark.parametrize(
|
||||
"args,expected_where,expected_params",
|
||||
|
|
|
|||
|
|
@ -1,19 +1,22 @@
|
|||
import json
|
||||
import pathlib
|
||||
import re
|
||||
import urllib.parse
|
||||
|
||||
import pytest
|
||||
from bs4 import BeautifulSoup as Soup
|
||||
|
||||
from datasette.utils import allowed_pragmas
|
||||
|
||||
from .fixtures import ( # noqa
|
||||
METADATA,
|
||||
app_client,
|
||||
app_client_base_url_prefix,
|
||||
app_client_shorter_time_limit,
|
||||
app_client_two_attached_databases,
|
||||
make_app_client,
|
||||
METADATA,
|
||||
)
|
||||
from .utils import assert_footer_links, inner_html
|
||||
import json
|
||||
import pathlib
|
||||
import pytest
|
||||
import re
|
||||
import urllib.parse
|
||||
|
||||
|
||||
def test_homepage(app_client_two_attached_databases):
|
||||
|
|
|
|||
|
|
@ -1,14 +1,17 @@
|
|||
"""
|
||||
Tests for the datasette.database.Database class
|
||||
"""
|
||||
from datasette.database import Database, Results, MultipleValues
|
||||
from datasette.utils.sqlite import sqlite3
|
||||
from datasette.utils import Column
|
||||
from .fixtures import app_client, app_client_two_attached_databases_crossdb_enabled
|
||||
import pytest
|
||||
import time
|
||||
import uuid
|
||||
|
||||
import pytest
|
||||
|
||||
from datasette.database import Database, MultipleValues, Results
|
||||
from datasette.utils import Column
|
||||
from datasette.utils.sqlite import sqlite3
|
||||
|
||||
from .fixtures import app_client, app_client_two_attached_databases_crossdb_enabled
|
||||
|
||||
|
||||
@pytest.fixture
|
||||
def db(app_client):
|
||||
|
|
|
|||
|
|
@ -2,12 +2,14 @@
|
|||
Tests for the datasette.app.Datasette class
|
||||
"""
|
||||
import dataclasses
|
||||
from datasette import Forbidden, Context
|
||||
from datasette.app import Datasette, Database
|
||||
from itsdangerous import BadSignature
|
||||
import pytest
|
||||
from typing import Optional
|
||||
|
||||
import pytest
|
||||
from itsdangerous import BadSignature
|
||||
|
||||
from datasette import Context, Forbidden
|
||||
from datasette.app import Database, Datasette
|
||||
|
||||
|
||||
@pytest.fixture
|
||||
def datasette(ds_client):
|
||||
|
|
|
|||
|
|
@ -1,7 +1,9 @@
|
|||
from datasette.utils.asgi import Request
|
||||
import json
|
||||
|
||||
import pytest
|
||||
|
||||
from datasette.utils.asgi import Request
|
||||
|
||||
|
||||
@pytest.mark.asyncio
|
||||
async def test_request_post_vars():
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
from datasette.utils.asgi import Response
|
||||
import pytest
|
||||
|
||||
from datasette.utils.asgi import Response
|
||||
|
||||
|
||||
def test_response_html():
|
||||
response = Response.html("Hello from HTML")
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
import pytest
|
||||
|
||||
from datasette.app import Datasette
|
||||
from datasette.utils import PrefixedUrlString
|
||||
import pytest
|
||||
|
||||
|
||||
@pytest.fixture(scope="module")
|
||||
|
|
|
|||
|
|
@ -1,7 +1,9 @@
|
|||
from datasette.app import Datasette
|
||||
import pytest
|
||||
from pathlib import Path
|
||||
|
||||
import pytest
|
||||
|
||||
from datasette.app import Datasette
|
||||
|
||||
# not necessarily a full path - the full compiled path looks like "ext.dylib"
|
||||
# or another suffix, but sqlite will, under the hood, decide which file
|
||||
# extension to use based on the operating system (apple=dylib, windows=dll etc)
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
from .utils import cookie_was_deleted
|
||||
import pytest
|
||||
|
||||
from .utils import cookie_was_deleted
|
||||
|
||||
|
||||
@pytest.mark.asyncio
|
||||
@pytest.mark.parametrize(
|
||||
|
|
|
|||
|
|
@ -1,9 +1,11 @@
|
|||
from click.testing import CliRunner
|
||||
from datasette import cli
|
||||
from unittest import mock
|
||||
import os
|
||||
import pathlib
|
||||
from unittest import mock
|
||||
|
||||
import pytest
|
||||
from click.testing import CliRunner
|
||||
|
||||
from datasette import cli
|
||||
|
||||
|
||||
class CaptureDockerfile:
|
||||
|
|
|
|||
|
|
@ -1,17 +1,20 @@
|
|||
import collections
|
||||
from datasette.app import Datasette
|
||||
from datasette.cli import cli
|
||||
from .fixtures import app_client, assert_permissions_checked, make_app_client
|
||||
from click.testing import CliRunner
|
||||
from bs4 import BeautifulSoup as Soup
|
||||
import copy
|
||||
import json
|
||||
from pprint import pprint
|
||||
import pytest_asyncio
|
||||
import pytest
|
||||
import re
|
||||
import time
|
||||
import urllib
|
||||
from pprint import pprint
|
||||
|
||||
import pytest
|
||||
import pytest_asyncio
|
||||
from bs4 import BeautifulSoup as Soup
|
||||
from click.testing import CliRunner
|
||||
|
||||
from datasette.app import Datasette
|
||||
from datasette.cli import cli
|
||||
|
||||
from .fixtures import app_client, assert_permissions_checked, make_app_client
|
||||
|
||||
|
||||
@pytest.fixture(scope="module")
|
||||
|
|
|
|||
|
|
@ -1,21 +1,3 @@
|
|||
from bs4 import BeautifulSoup as Soup
|
||||
from .fixtures import (
|
||||
app_client,
|
||||
app_client,
|
||||
make_app_client,
|
||||
TABLES,
|
||||
TEMP_PLUGIN_SECRET_FILE,
|
||||
PLUGINS_DIR,
|
||||
TestClient as _TestClient,
|
||||
) # noqa
|
||||
from click.testing import CliRunner
|
||||
from datasette.app import Datasette
|
||||
from datasette import cli, hookimpl, Permission
|
||||
from datasette.filters import FilterArguments
|
||||
from datasette.plugins import get_plugins, DEFAULT_PLUGINS, pm
|
||||
from datasette.utils.sqlite import sqlite3
|
||||
from datasette.utils import CustomRow, StartupError
|
||||
from jinja2.environment import Template
|
||||
import base64
|
||||
import importlib
|
||||
import json
|
||||
|
|
@ -23,9 +5,24 @@ import os
|
|||
import pathlib
|
||||
import re
|
||||
import textwrap
|
||||
import pytest
|
||||
import urllib
|
||||
|
||||
import pytest
|
||||
from bs4 import BeautifulSoup as Soup
|
||||
from click.testing import CliRunner
|
||||
from jinja2.environment import Template
|
||||
|
||||
from datasette import Permission, cli, hookimpl
|
||||
from datasette.app import Datasette
|
||||
from datasette.filters import FilterArguments
|
||||
from datasette.plugins import DEFAULT_PLUGINS, get_plugins, pm
|
||||
from datasette.utils import CustomRow, StartupError
|
||||
from datasette.utils.sqlite import sqlite3
|
||||
|
||||
from .fixtures import PLUGINS_DIR, TABLES, TEMP_PLUGIN_SECRET_FILE
|
||||
from .fixtures import TestClient as _TestClient # noqa
|
||||
from .fixtures import app_client, make_app_client
|
||||
|
||||
at_memory_re = re.compile(r" at 0x\w+")
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -1,10 +1,12 @@
|
|||
from click.testing import CliRunner
|
||||
from datasette import cli
|
||||
from unittest import mock
|
||||
import json
|
||||
import os
|
||||
import pytest
|
||||
import textwrap
|
||||
from unittest import mock
|
||||
|
||||
import pytest
|
||||
from click.testing import CliRunner
|
||||
|
||||
from datasette import cli
|
||||
|
||||
|
||||
@pytest.mark.serial
|
||||
|
|
|
|||
|
|
@ -1,9 +1,11 @@
|
|||
from click.testing import CliRunner
|
||||
from datasette import cli
|
||||
from unittest import mock
|
||||
import os
|
||||
import pathlib
|
||||
from unittest import mock
|
||||
|
||||
import pytest
|
||||
from click.testing import CliRunner
|
||||
|
||||
from datasette import cli
|
||||
|
||||
|
||||
@pytest.mark.serial
|
||||
|
|
|
|||
|
|
@ -1,8 +1,9 @@
|
|||
from datasette.app import Datasette, Database
|
||||
from datasette.utils import resolve_routes
|
||||
import pytest
|
||||
import pytest_asyncio
|
||||
|
||||
from datasette.app import Database, Datasette
|
||||
from datasette.utils import resolve_routes
|
||||
|
||||
|
||||
@pytest.fixture(scope="session")
|
||||
def routes():
|
||||
|
|
|
|||
|
|
@ -1,8 +1,10 @@
|
|||
from datasette.app import Datasette
|
||||
from datasette.utils import find_spatialite, SpatialiteNotFound, SPATIALITE_FUNCTIONS
|
||||
from .utils import has_load_extension
|
||||
import pytest
|
||||
|
||||
from datasette.app import Datasette
|
||||
from datasette.utils import SPATIALITE_FUNCTIONS, SpatialiteNotFound, find_spatialite
|
||||
|
||||
from .utils import has_load_extension
|
||||
|
||||
|
||||
def has_spatialite():
|
||||
try:
|
||||
|
|
|
|||
|
|
@ -1,16 +1,19 @@
|
|||
import json
|
||||
import urllib
|
||||
|
||||
import pytest
|
||||
|
||||
from datasette.utils import detect_json1
|
||||
from datasette.utils.sqlite import sqlite_version
|
||||
|
||||
from .fixtures import ( # noqa
|
||||
app_client,
|
||||
app_client_with_trace,
|
||||
app_client_returned_rows_matches_page_size,
|
||||
app_client_with_trace,
|
||||
generate_compound_rows,
|
||||
generate_sortable_rows,
|
||||
make_app_client,
|
||||
)
|
||||
import json
|
||||
import pytest
|
||||
import urllib
|
||||
|
||||
|
||||
@pytest.mark.asyncio
|
||||
|
|
|
|||
|
|
@ -1,12 +1,12 @@
|
|||
from datasette.app import Datasette, Database
|
||||
from bs4 import BeautifulSoup as Soup
|
||||
from .fixtures import ( # noqa
|
||||
app_client,
|
||||
make_app_client,
|
||||
)
|
||||
import pathlib
|
||||
import pytest
|
||||
import urllib.parse
|
||||
|
||||
import pytest
|
||||
from bs4 import BeautifulSoup as Soup
|
||||
|
||||
from datasette.app import Database, Datasette
|
||||
|
||||
from .fixtures import app_client, make_app_client # noqa
|
||||
from .utils import assert_footer_links, inner_html
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import pytest
|
||||
|
||||
from .fixtures import make_app_client
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -1,17 +1,19 @@
|
|||
"""
|
||||
Tests for various datasette helper functions.
|
||||
"""
|
||||
from datasette.app import Datasette
|
||||
from datasette import utils
|
||||
from datasette.utils.asgi import Request
|
||||
from datasette.utils.sqlite import sqlite3
|
||||
import json
|
||||
import os
|
||||
import pathlib
|
||||
import pytest
|
||||
import tempfile
|
||||
from unittest.mock import patch
|
||||
|
||||
import pytest
|
||||
|
||||
from datasette import utils
|
||||
from datasette.app import Datasette
|
||||
from datasette.utils.asgi import Request
|
||||
from datasette.utils.sqlite import sqlite3
|
||||
|
||||
|
||||
@pytest.mark.parametrize(
|
||||
"path,expected",
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
from datasette.utils.check_callable import check_callable
|
||||
import pytest
|
||||
|
||||
from datasette.utils.check_callable import check_callable
|
||||
|
||||
|
||||
class AsyncClass:
|
||||
async def __call__(self):
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue