Name the example databases as the documentation does

`medic` and `st` become `papers` and `notes`.
This commit is contained in:
Yiorgis Gozadinos 2026-08-27 11:06:34 +03:00
parent dfa5f8027e
commit b2c617f9f2
No known key found for this signature in database
3 changed files with 26 additions and 24 deletions

View file

@ -185,20 +185,20 @@ class TestSelectingADatabaseByName:
def test_a_named_database_is_passed_on_by_name(self, monkeypatch):
"""Not resolved to a path: the name is what results and citations carry,
and rewriting the configuration is what used to lose it."""
self._install(monkeypatch, medic="s3://bucket/prefix/medic.lancedb")
monkeypatch.setattr("haiku.rag.cli._db_name", "medic")
self._install(monkeypatch, papers="s3://bucket/prefix/papers.lancedb")
monkeypatch.setattr("haiku.rag.cli._db_name", "papers")
assert resolve_scope(None).names == ("medic",)
assert resolve_scope(None).names == ("papers",)
def test_naming_a_database_leaves_the_configuration_alone(self, monkeypatch):
self._install(monkeypatch, st="/data/st.lancedb", other="/data/o.lancedb")
monkeypatch.setattr("haiku.rag.cli._db_name", "st")
self._install(monkeypatch, notes="/data/notes.lancedb", other="/data/o.lancedb")
monkeypatch.setattr("haiku.rag.cli._db_name", "notes")
resolve_scope(None)
config = get_config()
assert config.lancedb.databases == {
"st": "/data/st.lancedb",
"notes": "/data/notes.lancedb",
"other": "/data/o.lancedb",
}
assert config.lancedb.uri == ""
@ -211,7 +211,7 @@ class TestSelectingADatabaseByName:
resolve_scope(None)
def test_an_unknown_name_does_not_leak_locations(self, monkeypatch):
self._install(monkeypatch, medic="s3://bucket/prefix/medic.lancedb")
self._install(monkeypatch, papers="s3://bucket/prefix/papers.lancedb")
monkeypatch.setattr("haiku.rag.cli._db_name", "gamma")
with pytest.raises(AmbiguousDatabaseError) as raised:
@ -221,7 +221,7 @@ class TestSelectingADatabaseByName:
def test_selecting_nothing_reports_an_empty_mapping(self, monkeypatch):
self._install(monkeypatch)
monkeypatch.setattr("haiku.rag.cli._db_name", "medic")
monkeypatch.setattr("haiku.rag.cli._db_name", "papers")
with pytest.raises(AmbiguousDatabaseError, match="nothing"):
resolve_scope(None)
@ -304,13 +304,15 @@ class TestSelectingADatabaseByName:
monkeypatch.chdir(tmp_path)
config_file = tmp_path / "selected.yaml"
config_file.write_text(
"lancedb:\n databases:\n medic: s3://bucket/medic.lancedb\n"
"lancedb:\n databases:\n papers: s3://bucket/papers.lancedb\n"
)
runner.invoke(
cli, ["--config", str(config_file), "--db-name", "medic", "settings"]
cli, ["--config", str(config_file), "--db-name", "papers", "settings"]
)
assert get_config().lancedb.databases == {"medic": "s3://bucket/medic.lancedb"}
assert get_config().lancedb.databases == {
"papers": "s3://bucket/papers.lancedb"
}
runner.invoke(cli, ["settings"])
@ -326,7 +328,7 @@ class TestResolvingTheDatabasePath:
assert ref.db_path == Path("/data/one.lancedb")
def test_naming_a_database_twice_is_refused(self, monkeypatch):
monkeypatch.setattr("haiku.rag.cli._db_name", "st")
monkeypatch.setattr("haiku.rag.cli._db_name", "notes")
with pytest.raises(AmbiguousDatabaseError, match="not both"):
resolve_scope(Path("/data/other.lancedb"))

View file

@ -172,13 +172,13 @@ async def test_app_info_opens_a_named_remote_database(tmp_path):
from haiku.rag.client.scope import DatabaseScope
config = AppConfig(
lancedb=LanceDBConfig(databases={"medic": "s3://bucket/medic.lancedb"})
lancedb=LanceDBConfig(databases={"papers": "s3://bucket/papers.lancedb"})
)
scope = DatabaseScope.resolve(config, database_name="medic")
scope = DatabaseScope.resolve(config, database_name="papers")
app = HaikuRAGApp(scope=scope, config=config)
assert app._is_local is False
assert app._store_config.lancedb.uri == "s3://bucket/medic.lancedb"
assert app._store_config.lancedb.uri == "s3://bucket/papers.lancedb"
assert app._store_config.lancedb.databases == {}
with patch(
@ -191,7 +191,7 @@ async def test_app_info_opens_a_named_remote_database(tmp_path):
await app.info()
opened = mock_connect.call_args.args[0]
assert opened.lancedb.uri == "s3://bucket/medic.lancedb"
assert opened.lancedb.uri == "s3://bucket/papers.lancedb"
async def test_app_doctor_opens_a_named_remote_database():
@ -200,15 +200,15 @@ async def test_app_doctor_opens_a_named_remote_database():
from haiku.rag.client.scope import DatabaseScope
config = AppConfig(
lancedb=LanceDBConfig(databases={"medic": "s3://bucket/medic.lancedb"})
lancedb=LanceDBConfig(databases={"papers": "s3://bucket/papers.lancedb"})
)
app = HaikuRAGApp(scope=DatabaseScope.resolve(config, database_name="medic"))
app = HaikuRAGApp(scope=DatabaseScope.resolve(config, database_name="papers"))
with patch("haiku.rag.doctor.run_doctor", new_callable=AsyncMock) as run:
run.return_value = MagicMock(checks=[], ok=True, duplicates=None)
await app.doctor()
assert run.call_args.args[0].lancedb.uri == "s3://bucket/medic.lancedb"
assert run.call_args.args[0].lancedb.uri == "s3://bucket/papers.lancedb"
async def test_app_info_uses_connect_lancedb_for_remote(tmp_path):

View file

@ -782,15 +782,15 @@ async def test_format_citations_rich_names_the_database_when_federating():
document_uri="test://doc",
document_title="Test Doc",
content="Body",
source="medic",
source="papers",
)
client = AsyncMock()
client.covers_multiple = True
client.source_names = ("medic", "st")
client.source_names = ("papers", "notes")
output = _render_rich(await format_citations_rich([citation], client))
assert "medic" in output
assert "papers" in output
def test_truncated_marks_what_it_dropped():
@ -820,7 +820,7 @@ async def test_format_citations_rich_omits_the_database_for_one_database():
document_uri="test://doc",
document_title="Test Doc",
content="Body",
source="medic",
source="papers",
)
client = AsyncMock()
client.covers_multiple = False
@ -828,7 +828,7 @@ async def test_format_citations_rich_omits_the_database_for_one_database():
output = _render_rich(await format_citations_rich([citation], client))
assert "medic" not in output
assert "papers" not in output
async def test_format_citations_rich_truncates_long_content():