summaryrefslogtreecommitdiff
path: root/src/test
diff options
context:
space:
mode:
authorTeodor Sigaev <teodor@sigaev.ru>2007-11-16 15:05:59 +0000
committerTeodor Sigaev <teodor@sigaev.ru>2007-11-16 15:05:59 +0000
commita867b40cf45fa564810fedf892fcfbcae46a2009 (patch)
tree599c97c3c35e32f18b7da7735669fb3488a10938 /src/test
parent2f1e7ffb76f7478f56aa511f6a0439a6169cbdda (diff)
Fix tsvectorout() and tsqueryout() to escape backslesh, add test of that.
Patch by Bruce Momjian <bruce@momjian.us> Backpatch is needed, but it's impossible to apply it directly
Diffstat (limited to 'src/test')
-rw-r--r--src/test/regress/expected/tstypes.out18
-rw-r--r--src/test/regress/sql/tstypes.sql3
2 files changed, 21 insertions, 0 deletions
diff --git a/src/test/regress/expected/tstypes.out b/src/test/regress/expected/tstypes.out
index e81c601b66f..4672f099e0a 100644
--- a/src/test/regress/expected/tstypes.out
+++ b/src/test/regress/expected/tstypes.out
@@ -59,6 +59,18 @@ SELECT E'''1 \\''2'' '' 3'' 4 '::tsvector;
'4' ' 3' '1 ''2'
(1 row)
+SELECT $$'\\as' ab\c ab\\c AB\\\c ab\\\\c$$::tsvector;
+ tsvector
+----------------------------------------
+ '\\as' 'abc' 'AB\\c' 'ab\\c' 'ab\\\\c'
+(1 row)
+
+SELECT tsvectorin(tsvectorout($$'\\as' ab\c ab\\c AB\\\c ab\\\\c$$::tsvector));
+ tsvectorin
+----------------------------------------
+ '\\as' 'abc' 'AB\\c' 'ab\\c' 'ab\\\\c'
+(1 row)
+
SELECT '''w'':4A,3B,2C,1D,5 a:8';
?column?
-----------------------
@@ -318,6 +330,12 @@ SELECT E'1&(''2''&('' 4''&(\\|5 | ''6 \\'' !|&'')))'::tsquery;
'1' & '2' & ' 4' & ( '|5' | '6 '' !|&' )
(1 row)
+SELECT $$'\\as'$$::tsquery;
+ tsquery
+---------
+ '\\as'
+(1 row)
+
SELECT 'a' < 'b & c'::tsquery as "true";
true
------
diff --git a/src/test/regress/sql/tstypes.sql b/src/test/regress/sql/tstypes.sql
index d0580910077..49afc3b23a2 100644
--- a/src/test/regress/sql/tstypes.sql
+++ b/src/test/regress/sql/tstypes.sql
@@ -10,6 +10,8 @@ SELECT E'''1 \\''2'''::tsvector;
SELECT E'''1 \\''2''3'::tsvector;
SELECT E'''1 \\''2'' 3'::tsvector;
SELECT E'''1 \\''2'' '' 3'' 4 '::tsvector;
+SELECT $$'\\as' ab\c ab\\c AB\\\c ab\\\\c$$::tsvector;
+SELECT tsvectorin(tsvectorout($$'\\as' ab\c ab\\c AB\\\c ab\\\\c$$::tsvector));
SELECT '''w'':4A,3B,2C,1D,5 a:8';
SELECT 'a:3A b:2a'::tsvector || 'ba:1234 a:1B';
SELECT setweight('w:12B w:13* w:12,5,6 a:1,3* a:3 w asd:1dc asd zxc:81,567,222A'::tsvector, 'c');
@@ -55,6 +57,7 @@ SELECT '1&2&4&5&6'::tsquery;
SELECT '1&(2&(4&(5|6)))'::tsquery;
SELECT '1&(2&(4&(5|!6)))'::tsquery;
SELECT E'1&(''2''&('' 4''&(\\|5 | ''6 \\'' !|&'')))'::tsquery;
+SELECT $$'\\as'$$::tsquery;
SELECT 'a' < 'b & c'::tsquery as "true";
SELECT 'a' > 'b & c'::tsquery as "false";