mirror of
https://github.com/simonw/datasette.git
synced 2025-12-10 16:51:24 +01:00
Improved .add_database() method design
Closes #1155 - _internal now has a sensible name Closes #509 - Support opening multiple databases with the same stem
This commit is contained in:
parent
270de6527b
commit
8919f99c2f
5 changed files with 86 additions and 46 deletions
|
|
@ -8,6 +8,7 @@ import asyncio
|
|||
from datasette.plugins import DEFAULT_PLUGINS
|
||||
from datasette.cli import cli, serve
|
||||
from datasette.version import __version__
|
||||
from datasette.utils.sqlite import sqlite3
|
||||
from click.testing import CliRunner
|
||||
import io
|
||||
import json
|
||||
|
|
@ -240,3 +241,17 @@ def test_serve_create(ensure_eventloop, tmpdir):
|
|||
"hash": None,
|
||||
}.items() <= databases[0].items()
|
||||
assert db_path.exists()
|
||||
|
||||
|
||||
def test_serve_duplicate_database_names(ensure_eventloop, tmpdir):
|
||||
runner = CliRunner()
|
||||
db_1_path = str(tmpdir / "db.db")
|
||||
nested = tmpdir / "nested"
|
||||
nested.mkdir()
|
||||
db_2_path = str(tmpdir / "nested" / "db.db")
|
||||
for path in (db_1_path, db_2_path):
|
||||
sqlite3.connect(path).execute("vacuum")
|
||||
result = runner.invoke(cli, [db_1_path, db_2_path, "--get", "/-/databases.json"])
|
||||
assert result.exit_code == 0, result.output
|
||||
databases = json.loads(result.output)
|
||||
assert {db["name"] for db in databases} == {"db", "db_2"}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue