summaryrefslogtreecommitdiffstats
path: root/test
diff options
context:
space:
mode:
authorDave Davenport <qball@gmpclient.org>2016-01-04 17:14:15 +0100
committerDave Davenport <qball@gmpclient.org>2016-01-04 17:18:49 +0100
commitd661a515f0d4519b7da9d3cd4332313bdb9fd9b9 (patch)
tree974dcd9ac07bd898e957513830e8262da124dbe7 /test
parent017f9e47ed4a330a7e758718706c8ec2edcb216a (diff)
Make levenshtein sort utf8 aware and obey case sensitive setting.
- Add tests. - Use Glibs unichar for comparison.
Diffstat (limited to 'test')
-rw-r--r--test/helper-test.c19
1 files changed, 18 insertions, 1 deletions
diff --git a/test/helper-test.c b/test/helper-test.c
index a5b98903..1e4d9f55 100644
--- a/test/helper-test.c
+++ b/test/helper-test.c
@@ -7,10 +7,18 @@
static int test = 0;
-#define TASSERT( a ) { \
+#define TASSERT( a ) { \
assert ( a ); \
printf ( "Test %i passed (%s)\n", ++test, # a ); \
}
+#define TASSERTE( a, b ) { \
+ if ( ( a ) == ( b ) ) { \
+ printf ( "Test %i passed (%s == %s) (%u == %u)\n", ++test, # a, # b, a, b ); \
+ }else { \
+ printf ( "Test %i failed (%s == %s) (%u != %u)\n", ++test, # a, # b, a, b ); \
+ abort ( ); \
+ } \
+}
void error_dialog ( const char *msg, G_GNUC_UNUSED int markup )
{
@@ -127,4 +135,13 @@ int main ( int argc, char ** argv )
TASSERT ( retv[2] && strcmp ( retv[2], "bEp" ) == 0 );
TASSERT ( retv[3] && strcmp ( retv[3], "bEE" ) == 0 );
tokenize_free ( retv );
+
+ TASSERT ( levenshtein ( "aap", "aap" ) == 0 );
+ TASSERT ( levenshtein ( "aap", "aap " ) == 1 );
+ TASSERT ( levenshtein ( "aap ", "aap" ) == 1 );
+ TASSERTE ( levenshtein ( "aap", "aap noot" ), 5 );
+ TASSERTE ( levenshtein ( "aap", "noot aap" ), 5 );
+ TASSERTE ( levenshtein ( "aap", "noot aap mies" ), 10 );
+ TASSERTE ( levenshtein ( "noot aap mies", "aap" ), 10 );
+ TASSERTE ( levenshtein ( "otp", "noot aap" ), 5 );
}