mirror of
https://git.postgresql.org/git/postgresql.git
synced 2024-11-27 07:21:09 +08:00
fuzzystrmatch: Add test suite
Reviewed-by: David Steele <david@pgmasters.net>
This commit is contained in:
parent
b28dfa6d6f
commit
6141123a82
4
contrib/fuzzystrmatch/.gitignore
vendored
Normal file
4
contrib/fuzzystrmatch/.gitignore
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
# Generated subdirectories
|
||||
/log/
|
||||
/results/
|
||||
/tmp_check/
|
@ -8,6 +8,8 @@ DATA = fuzzystrmatch--1.1.sql fuzzystrmatch--1.0--1.1.sql \
|
||||
fuzzystrmatch--unpackaged--1.0.sql
|
||||
PGFILEDESC = "fuzzystrmatch - similarities and distance between strings"
|
||||
|
||||
REGRESS = fuzzystrmatch
|
||||
|
||||
ifdef USE_PGXS
|
||||
PG_CONFIG = pg_config
|
||||
PGXS := $(shell $(PG_CONFIG) --pgxs)
|
||||
|
67
contrib/fuzzystrmatch/expected/fuzzystrmatch.out
Normal file
67
contrib/fuzzystrmatch/expected/fuzzystrmatch.out
Normal file
@ -0,0 +1,67 @@
|
||||
CREATE EXTENSION fuzzystrmatch;
|
||||
SELECT soundex('hello world!');
|
||||
soundex
|
||||
---------
|
||||
H464
|
||||
(1 row)
|
||||
|
||||
SELECT soundex('Anne'), soundex('Ann'), difference('Anne', 'Ann');
|
||||
soundex | soundex | difference
|
||||
---------+---------+------------
|
||||
A500 | A500 | 4
|
||||
(1 row)
|
||||
|
||||
SELECT soundex('Anne'), soundex('Andrew'), difference('Anne', 'Andrew');
|
||||
soundex | soundex | difference
|
||||
---------+---------+------------
|
||||
A500 | A536 | 2
|
||||
(1 row)
|
||||
|
||||
SELECT soundex('Anne'), soundex('Margaret'), difference('Anne', 'Margaret');
|
||||
soundex | soundex | difference
|
||||
---------+---------+------------
|
||||
A500 | M626 | 0
|
||||
(1 row)
|
||||
|
||||
SELECT levenshtein('GUMBO', 'GAMBOL');
|
||||
levenshtein
|
||||
-------------
|
||||
2
|
||||
(1 row)
|
||||
|
||||
SELECT levenshtein('GUMBO', 'GAMBOL', 2, 1, 1);
|
||||
levenshtein
|
||||
-------------
|
||||
3
|
||||
(1 row)
|
||||
|
||||
SELECT levenshtein_less_equal('extensive', 'exhaustive', 2);
|
||||
levenshtein_less_equal
|
||||
------------------------
|
||||
3
|
||||
(1 row)
|
||||
|
||||
SELECT levenshtein_less_equal('extensive', 'exhaustive', 4);
|
||||
levenshtein_less_equal
|
||||
------------------------
|
||||
4
|
||||
(1 row)
|
||||
|
||||
SELECT metaphone('GUMBO', 4);
|
||||
metaphone
|
||||
-----------
|
||||
KM
|
||||
(1 row)
|
||||
|
||||
SELECT dmetaphone('gumbo');
|
||||
dmetaphone
|
||||
------------
|
||||
KMP
|
||||
(1 row)
|
||||
|
||||
SELECT dmetaphone_alt('gumbo');
|
||||
dmetaphone_alt
|
||||
----------------
|
||||
KMP
|
||||
(1 row)
|
||||
|
21
contrib/fuzzystrmatch/sql/fuzzystrmatch.sql
Normal file
21
contrib/fuzzystrmatch/sql/fuzzystrmatch.sql
Normal file
@ -0,0 +1,21 @@
|
||||
CREATE EXTENSION fuzzystrmatch;
|
||||
|
||||
|
||||
SELECT soundex('hello world!');
|
||||
|
||||
SELECT soundex('Anne'), soundex('Ann'), difference('Anne', 'Ann');
|
||||
SELECT soundex('Anne'), soundex('Andrew'), difference('Anne', 'Andrew');
|
||||
SELECT soundex('Anne'), soundex('Margaret'), difference('Anne', 'Margaret');
|
||||
|
||||
|
||||
SELECT levenshtein('GUMBO', 'GAMBOL');
|
||||
SELECT levenshtein('GUMBO', 'GAMBOL', 2, 1, 1);
|
||||
SELECT levenshtein_less_equal('extensive', 'exhaustive', 2);
|
||||
SELECT levenshtein_less_equal('extensive', 'exhaustive', 4);
|
||||
|
||||
|
||||
SELECT metaphone('GUMBO', 4);
|
||||
|
||||
|
||||
SELECT dmetaphone('gumbo');
|
||||
SELECT dmetaphone_alt('gumbo');
|
@ -133,19 +133,19 @@ test=# SELECT levenshtein('GUMBO', 'GAMBOL');
|
||||
2
|
||||
(1 row)
|
||||
|
||||
test=# SELECT levenshtein('GUMBO', 'GAMBOL', 2,1,1);
|
||||
test=# SELECT levenshtein('GUMBO', 'GAMBOL', 2, 1, 1);
|
||||
levenshtein
|
||||
-------------
|
||||
3
|
||||
(1 row)
|
||||
|
||||
test=# SELECT levenshtein_less_equal('extensive', 'exhaustive',2);
|
||||
test=# SELECT levenshtein_less_equal('extensive', 'exhaustive', 2);
|
||||
levenshtein_less_equal
|
||||
------------------------
|
||||
3
|
||||
(1 row)
|
||||
|
||||
test=# SELECT levenshtein_less_equal('extensive', 'exhaustive',4);
|
||||
test=# SELECT levenshtein_less_equal('extensive', 'exhaustive', 4);
|
||||
levenshtein_less_equal
|
||||
------------------------
|
||||
4
|
||||
@ -227,7 +227,7 @@ dmetaphone_alt(text source) returns text
|
||||
</para>
|
||||
|
||||
<screen>
|
||||
test=# select dmetaphone('gumbo');
|
||||
test=# SELECT dmetaphone('gumbo');
|
||||
dmetaphone
|
||||
------------
|
||||
KMP
|
||||
|
Loading…
Reference in New Issue
Block a user