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]