mirror of
https://github.com/postgres/postgres.git
synced 2025-04-20 00:42:27 +03: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
|
fuzzystrmatch--unpackaged--1.0.sql
|
||||||
PGFILEDESC = "fuzzystrmatch - similarities and distance between strings"
|
PGFILEDESC = "fuzzystrmatch - similarities and distance between strings"
|
||||||
|
|
||||||
|
REGRESS = fuzzystrmatch
|
||||||
|
|
||||||
ifdef USE_PGXS
|
ifdef USE_PGXS
|
||||||
PG_CONFIG = pg_config
|
PG_CONFIG = pg_config
|
||||||
PGXS := $(shell $(PG_CONFIG) --pgxs)
|
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');
|
@ -227,7 +227,7 @@ dmetaphone_alt(text source) returns text
|
|||||||
</para>
|
</para>
|
||||||
|
|
||||||
<screen>
|
<screen>
|
||||||
test=# select dmetaphone('gumbo');
|
test=# SELECT dmetaphone('gumbo');
|
||||||
dmetaphone
|
dmetaphone
|
||||||
------------
|
------------
|
||||||
KMP
|
KMP
|
||||||
|
Loading…
x
Reference in New Issue
Block a user