* update test-cases

This commit is contained in:
Dirk-Jan C. Binnema
2011-06-18 18:49:46 +03:00
parent e0c522c6a0
commit dfcbd854f0
3 changed files with 42 additions and 11 deletions

View File

@ -115,7 +115,7 @@ test_mu_index (void)
store = mu_store_new (xpath, NULL, NULL); store = mu_store_new (xpath, NULL, NULL);
g_assert (store); g_assert (store);
g_assert_cmpuint (mu_store_count (store), ==, 7); g_assert_cmpuint (mu_store_count (store), ==, 8);
mu_store_destroy (store); mu_store_destroy (store);
g_free (muhome); g_free (muhome);

View File

@ -31,6 +31,7 @@
#include "test-mu-common.h" #include "test-mu-common.h"
#include "src/mu-msg.h" #include "src/mu-msg.h"
#include "src/mu-str.h"
static gboolean static gboolean
check_contact_01 (MuMsgContact *contact, int *idx) check_contact_01 (MuMsgContact *contact, int *idx)
@ -275,7 +276,8 @@ static void
test_mu_msg_comp_unix_programmer (void) test_mu_msg_comp_unix_programmer (void)
{ {
MuMsg *msg; MuMsg *msg;
char *refs;
msg = mu_msg_new_from_file (MU_TESTMAILDIR2 msg = mu_msg_new_from_file (MU_TESTMAILDIR2
"bar/cur/181736.eml", NULL, NULL); "bar/cur/181736.eml", NULL, NULL);
@ -287,8 +289,9 @@ test_mu_msg_comp_unix_programmer (void)
==, "Jimbo Foobarcuux <jimbo@slp53.sl.home>"); ==, "Jimbo Foobarcuux <jimbo@slp53.sl.home>");
g_assert_cmpstr (mu_msg_get_msgid(msg), g_assert_cmpstr (mu_msg_get_msgid(msg),
==, "oktdp.42997$Te.22361@news.usenetserver.com"); ==, "oktdp.42997$Te.22361@news.usenetserver.com");
g_assert_cmpstr (mu_msg_get_references_str(msg), ==, refs = mu_str_from_list (mu_msg_get_references(msg), ',');
g_assert_cmpstr (refs, ==,
"e9065dac-13c1-4103-9e31-6974ca232a89@t15g2000prt.googlegroups.com," "e9065dac-13c1-4103-9e31-6974ca232a89@t15g2000prt.googlegroups.com,"
"87hbblwelr.fsf@sapphire.mobileactivedefense.com," "87hbblwelr.fsf@sapphire.mobileactivedefense.com,"
"pql248-4va.ln1@wilbur.25thandClement.com," "pql248-4va.ln1@wilbur.25thandClement.com,"
@ -300,6 +303,7 @@ test_mu_msg_comp_unix_programmer (void)
"tO8cp.1228$GE6.370@news.usenetserver.com," "tO8cp.1228$GE6.370@news.usenetserver.com,"
"ikr6ks$nlf$1@Iltempo.Update.UU.SE," "ikr6ks$nlf$1@Iltempo.Update.UU.SE,"
"8ioh48-8mu.ln1@leafnode-msgid.gclare.org.uk"); "8ioh48-8mu.ln1@leafnode-msgid.gclare.org.uk");
g_free (refs);
//"jimbo@slp53.sl.home (Jimbo Foobarcuux)"; //"jimbo@slp53.sl.home (Jimbo Foobarcuux)";
g_assert_cmpuint (mu_msg_get_prio(msg), /* 'low' */ g_assert_cmpuint (mu_msg_get_prio(msg), /* 'low' */
@ -333,8 +337,6 @@ main (int argc, char *argv[])
test_mu_msg_03); test_mu_msg_03);
g_test_add_func ("/mu-msg/mu-msg-04", g_test_add_func ("/mu-msg/mu-msg-04",
test_mu_msg_04); test_mu_msg_04);
g_test_add_func ("/mu-msg/mu-msg-05",
test_mu_msg_05);
g_test_add_func ("/mu-msg/mu-msg-tags", g_test_add_func ("/mu-msg/mu-msg-tags",
test_mu_msg_tags); test_mu_msg_tags);
g_test_add_func ("/mu-msg/mu-msg-umlaut", g_test_add_func ("/mu-msg/mu-msg-umlaut",

View File

@ -58,6 +58,27 @@ fill_database (const char *testdir)
return xpath; return xpath;
} }
static void
assert_no_dups (MuMsgIter *iter)
{
GHashTable *hash;
hash = g_hash_table_new_full (g_str_hash, g_str_equal,
(GDestroyNotify)g_free, NULL);
mu_msg_iter_reset (iter);
while (!mu_msg_iter_is_done(iter)) {
MuMsg *msg = mu_msg_iter_get_msg (iter, NULL);
/* make sure there are no duplicates */
g_assert (!g_hash_table_lookup (hash, mu_msg_get_path (msg)));
g_hash_table_insert (hash, g_strdup (mu_msg_get_path(msg)),
GUINT_TO_POINTER(TRUE));
mu_msg_iter_next (iter);
}
mu_msg_iter_reset (iter);
g_hash_table_destroy (hash);
}
/* note: this also *moves the iter* */ /* note: this also *moves the iter* */
static guint static guint
@ -66,6 +87,7 @@ run_and_count_matches (const char *xpath, const char *query)
MuQuery *mquery; MuQuery *mquery;
MuMsgIter *iter; MuMsgIter *iter;
guint count1, count2; guint count1, count2;
GHashTable *hash;
mquery = mu_query_new (xpath, NULL); mquery = mu_query_new (xpath, NULL);
g_assert (query); g_assert (query);
@ -85,11 +107,18 @@ run_and_count_matches (const char *xpath, const char *query)
mu_query_destroy (mquery); mu_query_destroy (mquery);
g_assert (iter); g_assert (iter);
hash = g_hash_table_new_full (g_str_hash, g_str_equal,
(GDestroyNotify)g_free, NULL);
assert_no_dups (iter);
/* run query twice, to test mu_msg_iter_reset */ /* run query twice, to test mu_msg_iter_reset */
for (count1 = 0; !mu_msg_iter_is_done(iter); for (count1 = 0; !mu_msg_iter_is_done(iter);
mu_msg_iter_next(iter), ++count1); mu_msg_iter_next(iter), ++count1);
g_assert(mu_msg_iter_reset (iter)); mu_msg_iter_reset (iter);
assert_no_dups (iter);
for (count2 = 0; !mu_msg_iter_is_done(iter); for (count2 = 0; !mu_msg_iter_is_done(iter);
mu_msg_iter_next(iter), ++count2); mu_msg_iter_next(iter), ++count2);
@ -448,9 +477,9 @@ main (int argc, char *argv[])
g_test_add_func ("/mu-query/test-mu-query-tags", g_test_add_func ("/mu-query/test-mu-query-tags",
test_mu_query_tags); test_mu_query_tags);
g_log_set_handler (NULL, /* g_log_set_handler (NULL, */
G_LOG_LEVEL_MASK | G_LOG_FLAG_FATAL| G_LOG_FLAG_RECURSION, /* G_LOG_LEVEL_MASK | G_LOG_FLAG_FATAL| G_LOG_FLAG_RECURSION, */
(GLogFunc)black_hole, NULL); /* (GLogFunc)black_hole, NULL); */
rv = g_test_run (); rv = g_test_run ();