Skip to content

Commit

Permalink
/-/databases and homepage maintain connection order, closes #1216
Browse files Browse the repository at this point in the history
  • Loading branch information
simonw committed Jun 2, 2021
1 parent 03b35d7 commit 807de37
Show file tree
Hide file tree
Showing 4 changed files with 7 additions and 6 deletions.
2 changes: 1 addition & 1 deletion datasette/app.py
Original file line number Diff line number Diff line change
Expand Up @@ -646,7 +646,7 @@ def _connected_databases(self):
"is_memory": d.is_memory,
"hash": d.hash,
}
for name, d in sorted(self.databases.items(), key=lambda p: p[1].name)
for name, d in self.databases.items()
if name != "_internal"
]

Expand Down
3 changes: 2 additions & 1 deletion tests/fixtures.py
Original file line number Diff line number Diff line change
Expand Up @@ -126,7 +126,8 @@ def make_app_client(
for extra_filename, extra_sql in extra_databases.items():
extra_filepath = os.path.join(tmpdir, extra_filename)
sqlite3.connect(extra_filepath).executescript(extra_sql)
files.append(extra_filepath)
# Insert at start to help test /-/databases ordering:
files.insert(0, extra_filepath)
os.chdir(os.path.dirname(filepath))
config = config or {}
for key, value in {
Expand Down
2 changes: 1 addition & 1 deletion tests/test_api.py
Original file line number Diff line number Diff line change
Expand Up @@ -1918,7 +1918,7 @@ def test_database_with_space_in_name(app_client_two_attached_databases, path):

def test_common_prefix_database_names(app_client_conflicting_database_names):
# https://github.com/simonw/datasette/issues/597
assert ["fixtures", "foo", "foo-bar"] == [
assert ["foo-bar", "foo", "fixtures"] == [
d["name"]
for d in app_client_conflicting_database_names.get("/-/databases.json").json
]
Expand Down
6 changes: 3 additions & 3 deletions tests/test_html.py
Original file line number Diff line number Diff line change
Expand Up @@ -29,11 +29,11 @@ def test_homepage(app_client_two_attached_databases):
)
# Should be two attached databases
assert [
{"href": "/fixtures", "text": "fixtures"},
{"href": r"/extra%20database", "text": "extra database"},
{"href": "/fixtures", "text": "fixtures"},
] == [{"href": a["href"], "text": a.text.strip()} for a in soup.select("h2 a")]
# The first attached database should show count text and attached tables
h2 = soup.select("h2")[1]
# Database should show count text and attached tables
h2 = soup.select("h2")[0]
assert "extra database" == h2.text.strip()
counts_p, links_p = h2.find_all_next("p")[:2]
assert (
Expand Down

0 comments on commit 807de37

Please sign in to comment.