5 #include "test-helper.h"
7 #define DEBUG_FLAG EMPATHY_DEBUG_TESTS
8 #include <libempathy/empathy-debug.h>
10 #include <libempathy-gtk/empathy-live-search.h>
16 gboolean should_match
;
20 test_live_search (void)
22 LiveSearchTest tests
[] =
24 /* Test word separators and case */
25 { "Hello World", "he", TRUE
},
26 { "Hello World", "wo", TRUE
},
27 { "Hello World", "lo", FALSE
},
28 { "Hello World", "ld", FALSE
},
29 { "Hello-World", "wo", TRUE
},
30 { "HelloWorld", "wo", FALSE
},
32 /* Test composed chars (accentued letters) */
33 { "Jörgen", "jor", TRUE
},
34 { "Gaëtan", "gaetan", TRUE
},
35 { "élève", "ele", TRUE
},
36 { "Azais", "AzaÏs", TRUE
},
38 /* Test decomposed chars, they looks the same, but are actually
39 * composed of multiple unicodes */
40 { "Jorgen", "Jör", TRUE
},
41 { "Jörgen", "jor", TRUE
},
44 { "Xavier Claessens", "Xav Cla", TRUE
},
45 { "Xavier Claessens", "Cla Xav", TRUE
},
46 { "Foo Bar Baz", " b ", TRUE
},
47 { "Foo Bar Baz", "bar bazz", FALSE
},
54 for (i
= 0; tests
[i
].string
!= NULL
; i
++)
59 match
= empathy_live_search_match_string (tests
[i
].string
, tests
[i
].prefix
);
60 ok
= (match
== tests
[i
].should_match
);
62 DEBUG ("'%s' - '%s' %s: %s", tests
[i
].string
, tests
[i
].prefix
,
63 tests
[i
].should_match
? "should match" : "should NOT match",
64 ok
? "OK" : "FAILED");
76 test_init (argc
, argv
);
78 g_test_add_func ("/live-search", test_live_search
);
80 result
= g_test_run ();