From 82a17b81f52ba948bd5945b17dc775642d7d1a70 Mon Sep 17 00:00:00 2001 From: Andrew Kane Date: Tue, 9 Apr 2024 16:41:48 -0700 Subject: [PATCH] Improved sparsevec input test [skip ci] --- src/sparsevec.c | 3 +++ test/expected/sparsevec_input.out | 6 +++--- test/sql/sparsevec_input.sql | 2 +- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/src/sparsevec.c b/src/sparsevec.c index 4a40339..335ebe0 100644 --- a/src/sparsevec.c +++ b/src/sparsevec.c @@ -291,6 +291,9 @@ sparsevec_in(PG_FUNCTION_ARGS) nnz++; } + while (sparsevec_isspace(*stringEnd)) + stringEnd++; + if (*stringEnd != '\0' && *stringEnd != '}') ereport(ERROR, (errcode(ERRCODE_INVALID_TEXT_REPRESENTATION), diff --git a/test/expected/sparsevec_input.out b/test/expected/sparsevec_input.out index ce5d8d1..b27d205 100644 --- a/test/expected/sparsevec_input.out +++ b/test/expected/sparsevec_input.out @@ -4,10 +4,10 @@ SELECT '{1:1.5,3:3.5}/5'::sparsevec; {1:1.5,3:3.5}/5 (1 row) -SELECT '{1:1.5,3:3.5}/5'::sparsevec::vector; - vector +SELECT ' { 1 : 1.5 , 3 : 3.5 }/5 '::sparsevec; + sparsevec ----------------- - [1.5,0,3.5,0,0] + {1:1.5,3:3.5}/5 (1 row) SELECT ''::sparsevec; diff --git a/test/sql/sparsevec_input.sql b/test/sql/sparsevec_input.sql index 9414925..c85545d 100644 --- a/test/sql/sparsevec_input.sql +++ b/test/sql/sparsevec_input.sql @@ -1,5 +1,5 @@ SELECT '{1:1.5,3:3.5}/5'::sparsevec; -SELECT '{1:1.5,3:3.5}/5'::sparsevec::vector; +SELECT ' { 1 : 1.5 , 3 : 3.5 }/5 '::sparsevec; SELECT ''::sparsevec; SELECT '{'::sparsevec;