pgvector.git / summary / log / commit / refs

commit    bf355792b2c377ab06dce6aa062b7e048d67aaa6
Author:   Andrew Kane <andrew@ankane.org>
Date:     Wed Apr 10 18:37:11 2024 +0000

    Added tests for sparsevec_norm [skip ci]


test/expected/halfvec_functions.out | 36 +++++++++++++++++------------------ test/expected/sparsevec_functions.out | 24 +++++++++++++++++++++++ test/sql/halfvec_functions.sql | 8 ++++---- test/sql/sparsevec_functions.sql | 5 +++++ 4 files changed, 51 insertions(+), 22 deletions(-) diff --git a/test/expected/halfvec_functions.out b/test/expected/halfvec_functions.out index 222b8560..7bd76e51 100644 --- a/test/expected/halfvec_functions.out +++ b/test/expected/halfvec_functions.out @@ -1,3 +1,21 @@ +SELECT round(halfvec_norm('[1,1]')::numeric, 5); + round +--------- + 1.41421 +(1 row) + +SELECT halfvec_norm('[3,4]'); + halfvec_norm +-------------- + 5 +(1 row) + +SELECT halfvec_norm('[0,1]'); + halfvec_norm +-------------- + 1 +(1 row) + SELECT l2_distance('[0,0]'::halfvec, '[3,4]'); l2_distance ------------- @@ -156,21 +174,3 @@ SELECT subvector('[1,2,3,4,5]'::halfvec, 3, -1); ERROR: halfvec must have at least 1 dimension SELECT subvector('[1,2,3,4,5]'::halfvec, -1, 2); ERROR: halfvec must have at least 1 dimension -SELECT round(halfvec_norm('[1,1]')::numeric, 5); - round ---------- - 1.41421 -(1 row) - -SELECT halfvec_norm('[3,4]'); - halfvec_norm --------------- - 5 -(1 row) - -SELECT halfvec_norm('[0,1]'); - halfvec_norm --------------- - 1 -(1 row) - diff --git a/test/expected/sparsevec_functions.out b/test/expected/sparsevec_functions.out index 36330605..c9173836 100644 --- a/test/expected/sparsevec_functions.out +++ b/test/expected/sparsevec_functions.out @@ -1,3 +1,27 @@ +SELECT round(sparsevec_norm('{1:1,2:1}/2')::numeric, 5); + round +--------- + 1.41421 +(1 row) + +SELECT sparsevec_norm('{1:3,2:4}/2'); + sparsevec_norm +---------------- + 5 +(1 row) + +SELECT sparsevec_norm('{2:1}/2'); + sparsevec_norm +---------------- + 1 +(1 row) + +SELECT sparsevec_norm('{1:3e37,2:4e37}/2')::real; + sparsevec_norm +---------------- + 5e+37 +(1 row) + SELECT l2_distance('{}/2'::sparsevec, '{1:3,2:4}/2'); l2_distance ------------- diff --git a/test/sql/halfvec_functions.sql b/test/sql/halfvec_functions.sql index 1fc086a5..d35bc87f 100644 --- a/test/sql/halfvec_functions.sql +++ b/test/sql/halfvec_functions.sql @@ -1,3 +1,7 @@ +SELECT round(halfvec_norm('[1,1]')::numeric, 5); +SELECT halfvec_norm('[3,4]'); +SELECT halfvec_norm('[0,1]'); + SELECT l2_distance('[0,0]'::halfvec, '[3,4]'); SELECT l2_distance('[0,0]'::halfvec, '[0,1]'); SELECT l2_distance('[1,2]'::halfvec, '[3]'); @@ -34,7 +38,3 @@ SELECT subvector('[1,2,3,4,5]'::halfvec, 3, 9); SELECT subvector('[1,2,3,4,5]'::halfvec, 1, 0); SELECT subvector('[1,2,3,4,5]'::halfvec, 3, -1); SELECT subvector('[1,2,3,4,5]'::halfvec, -1, 2); - -SELECT round(halfvec_norm('[1,1]')::numeric, 5); -SELECT halfvec_norm('[3,4]'); -SELECT halfvec_norm('[0,1]'); diff --git a/test/sql/sparsevec_functions.sql b/test/sql/sparsevec_functions.sql index 57eca71c..436d059d 100644 --- a/test/sql/sparsevec_functions.sql +++ b/test/sql/sparsevec_functions.sql @@ -1,3 +1,8 @@ +SELECT round(sparsevec_norm('{1:1,2:1}/2')::numeric, 5); +SELECT sparsevec_norm('{1:3,2:4}/2'); +SELECT sparsevec_norm('{2:1}/2'); +SELECT sparsevec_norm('{1:3e37,2:4e37}/2')::real; + SELECT l2_distance('{}/2'::sparsevec, '{1:3,2:4}/2'); SELECT l2_distance('{}/2'::sparsevec, '{2:1}/2'); SELECT '{}/2'::sparsevec <-> '{1:3,2:4}/2'; [parent: 12f4a34708bf]