Spaces:
Running
Running
fix: empty return7
Browse files- sql/aws_pgvector_contract.sql +1 -1
- tests/test_sql_contract.py +11 -0
sql/aws_pgvector_contract.sql
CHANGED
|
@@ -370,7 +370,7 @@ BEGIN
|
|
| 370 |
SELECT 1
|
| 371 |
FROM jsonb_array_elements_text($4->'tags') AS allowed(value)
|
| 372 |
WHERE lower(COALESCE(e.metadata->>'tags', ''))
|
| 373 |
-
LIKE ('%' || lower(allowed.value) || '%')
|
| 374 |
)
|
| 375 |
)
|
| 376 |
AND (
|
|
|
|
| 370 |
SELECT 1
|
| 371 |
FROM jsonb_array_elements_text($4->'tags') AS allowed(value)
|
| 372 |
WHERE lower(COALESCE(e.metadata->>'tags', ''))
|
| 373 |
+
LIKE ('%%' || lower(allowed.value) || '%%')
|
| 374 |
)
|
| 375 |
)
|
| 376 |
AND (
|
tests/test_sql_contract.py
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
from pathlib import Path
|
| 2 |
+
|
| 3 |
+
|
| 4 |
+
def test_hybrid_search_dynamic_sql_escapes_format_percent_signs() -> None:
|
| 5 |
+
contract = Path("sql/aws_pgvector_contract.sql").read_text(encoding="utf-8")
|
| 6 |
+
dynamic_sql = contract.split("RETURN QUERY EXECUTE format($query$", maxsplit=1)[1]
|
| 7 |
+
dynamic_sql = dynamic_sql.split("$query$, target_table)", maxsplit=1)[0]
|
| 8 |
+
|
| 9 |
+
remaining_percent_signs = dynamic_sql.replace("%%", "").replace("%I", "")
|
| 10 |
+
|
| 11 |
+
assert "%" not in remaining_percent_signs
|