Download tests/docker/test_sqlite_runtime.py from SaylorTwift/hermes-agent: direct link, hf CLI and curl.
- Browser
- Download file 1.52 kB
-
https://huggingface.co/SaylorTwift/hermes-agent/resolve/main/tests/docker/test_sqlite_runtime.py
- Command line
-
hf download hf://SaylorTwift/hermes-agent/tests/docker/test_sqlite_runtime.py
-
curl -L -o test_sqlite_runtime.py https://huggingface.co/SaylorTwift/hermes-agent/resolve/main/tests/docker/test_sqlite_runtime.py
1.52 kB
| """Runtime qualification for SQLite in the published Docker image.""" | |
| from __future__ import annotations | |
| import json | |
| import subprocess | |
| _SQLITE_PROBE = r""" | |
| import json | |
| import sqlite3 | |
| from hermes_cli.sqlite_runtime import is_sqlite_wal_reset_vulnerable | |
| db = sqlite3.connect(":memory:") | |
| try: | |
| db.execute("CREATE VIRTUAL TABLE docs USING fts5(content, tokenize='trigram')") | |
| db.execute("INSERT INTO docs VALUES ('hermes')") | |
| matches = db.execute( | |
| "SELECT count(*) FROM docs WHERE docs MATCH 'erm'" | |
| ).fetchone()[0] | |
| finally: | |
| db.close() | |
| print(json.dumps({ | |
| "sqlite_version": sqlite3.sqlite_version, | |
| "wal_reset_vulnerable": is_sqlite_wal_reset_vulnerable( | |
| sqlite3.sqlite_version_info | |
| ), | |
| "trigram_matches": matches, | |
| })) | |
| """ | |
| def test_image_links_fixed_sqlite_with_fts5_trigram(built_image: str) -> None: | |
| result = subprocess.run( | |
| [ | |
| "docker", | |
| "run", | |
| "--rm", | |
| "--user", | |
| "hermes", | |
| "--entrypoint", | |
| "/opt/hermes/.venv/bin/python", | |
| built_image, | |
| "-c", | |
| _SQLITE_PROBE, | |
| ], | |
| capture_output=True, | |
| text=True, | |
| timeout=60, | |
| ) | |
| assert result.returncode == 0, ( | |
| f"SQLite runtime probe failed: stdout={result.stdout!r} " | |
| f"stderr={result.stderr!r}" | |
| ) | |
| payload = json.loads(result.stdout) | |
| assert payload["wal_reset_vulnerable"] is False, payload | |
| assert payload["trigram_matches"] == 1, payload | |