From 7f47409e607c9f7b1e0875dd8b428cf91ca9db03 Mon Sep 17 00:00:00 2001 From: Alex Garcia Date: Sun, 17 Nov 2024 08:45:57 -0800 Subject: [PATCH] test-case --- tests/__snapshots__/test-metadata.ambr | 6 ++++++ tests/test-metadata.py | 20 ++++++++++++++++++-- 2 files changed, 24 insertions(+), 2 deletions(-) diff --git a/tests/__snapshots__/test-metadata.ambr b/tests/__snapshots__/test-metadata.ambr index 3ee7135..f4f2379 100644 --- a/tests/__snapshots__/test-metadata.ambr +++ b/tests/__snapshots__/test-metadata.ambr @@ -617,6 +617,12 @@ ]), }) # --- +# name: test_long_text_knn[knn-eq-true] + dict({ + 'error': 'OperationalError', + 'message': 'Could not filter metadata fields', + }) +# --- # name: test_long_text_updates dict({ 'v_chunks': OrderedDict({ diff --git a/tests/test-metadata.py b/tests/test-metadata.py index 160741a..bef088e 100644 --- a/tests/test-metadata.py +++ b/tests/test-metadata.py @@ -137,12 +137,28 @@ def test_long_text_updates(db, snapshot): ) assert vec0_shadow_table_contents(db, "v") == snapshot() INSERT = "insert into v(vector, name) values (?, ?)" - assert exec(db, INSERT, [b"\x11\x11\x11\x11", "123456789a12"]) - assert exec(db, INSERT, [b"\x11\x11\x11\x11", "123456789a123"]) + exec(db, INSERT, [b"\x11\x11\x11\x11", "123456789a12"]) + exec(db, INSERT, [b"\x11\x11\x11\x11", "123456789a123"]) assert exec(db, "select * from v") == snapshot() assert vec0_shadow_table_contents(db, "v") == snapshot() +def test_long_text_knn(db, snapshot): + db.execute( + "create virtual table v using vec0(vector float[1], name text, chunk_size=8)" + ) + INSERT = "insert into v(vector, name) values (?, ?)" + exec(db, INSERT, [b"\x11\x11\x11\x11", "aaaaaaaaaaaa_aaa"]) + exec(db, INSERT, [b"\x11\x11\x11\x11", "aaaaaaaaaaaa_bbb"]) + exec(db, INSERT, [b"\x11\x11\x11\x11", "aaaaaaaaaaaa_ccc"]) + + assert exec( + db, + "select * from v where vector match X'11111111' and k = 5 and name = ?", + ["aaaaaaaaaaaa_aaa"], + ) == snapshot(name="knn-eq-true") + + def test_types(db, snapshot): db.execute( "create virtual table v using vec0(vector float[1], b boolean, n int, f float, t text, chunk_size=8)"