Test01 / tests /llm_benchmark /sql /test_query.py
github-actions
Sync from GitHub
87151cc
Raw History Blame Contribute Delete
1.11 kB
import pytest
from llm_benchmark.sql.query import SqlQuery
@pytest.mark.parametrize(
"name, expected",
[
("Presence", True),
("Roundabout", False),
("' OR 1=1 --", False),
("Presence'; DROP TABLE Album; --", False),
("This Album Doesn't Exist", False),
],
)
def test_query_album(name: str, expected: bool) -> None:
result = SqlQuery.query_album(name)
assert isinstance(result, bool)
assert result is expected
def test_benchmark_query_album(benchmark) -> None:
benchmark(SqlQuery.query_album, "Presence")
def test_join_albums() -> None:
assert SqlQuery.join_albums()[0] == (
"For Those About To Rock (We Salute You)",
"For Those About To Rock We Salute You",
"AC/DC",
)
def test_benchmark_join_albums(benchmark) -> None:
benchmark(SqlQuery.join_albums)
def test_top_invoices() -> None:
top = SqlQuery.top_invoices()
assert top[0][2] == 25.86
assert top[2][2] == 21.86
assert len(top) == 10
def test_benchmark_top_invoices(benchmark) -> None:
benchmark(SqlQuery.top_invoices)