* test-mu-str.c: cosmetics

This commit is contained in:
Dirk-Jan C. Binnema 2010-12-07 23:20:19 +02:00
parent 0131b9bd5f
commit c0e50f8d91
1 changed files with 133 additions and 133 deletions

View File

@ -35,26 +35,26 @@
static void static void
test_mu_str_date_01 (void) test_mu_str_date_01 (void)
{ {
struct tm *tmbuf; struct tm *tmbuf;
char buf[64]; char buf[64];
gchar *tmp; gchar *tmp;
time_t some_time; time_t some_time;
some_time = 1234567890;
tmbuf = localtime (&some_time);
strftime (buf, 64, "%x", tmbuf);
some_time = 1234567890; /* $ date -ud@1234567890; Fri Feb 13 23:31:30 UTC 2009 */
tmbuf = localtime (&some_time); g_assert_cmpstr (mu_str_date_s ("%x", some_time), ==, buf);
strftime (buf, 64, "%x", tmbuf);
/* $ date -ud@1234567890; Fri Feb 13 23:31:30 UTC 2009 */ /* date -ud@987654321 Thu Apr 19 04:25:21 UTC 2001 */
g_assert_cmpstr (mu_str_date_s ("%x", some_time), ==, buf); some_time = 987654321;
tmbuf = localtime (&some_time);
/* date -ud@987654321 Thu Apr 19 04:25:21 UTC 2001 */ strftime (buf, 64, "%c", tmbuf);
some_time = 987654321; tmp = mu_str_date ("%c", some_time);
tmbuf = localtime (&some_time);
strftime (buf, 64, "%c", tmbuf);
tmp = mu_str_date ("%c", some_time);
g_assert_cmpstr (tmp, ==, buf); g_assert_cmpstr (tmp, ==, buf);
g_free (tmp); g_free (tmp);
} }
@ -62,22 +62,22 @@ test_mu_str_date_01 (void)
static void static void
test_mu_str_size_01 (void) test_mu_str_size_01 (void)
{ {
struct lconv *lc; struct lconv *lc;
char *tmp2; char *tmp2;
lc = localeconv(); lc = localeconv();
tmp2 = g_strdup_printf ("0%s0 kB", lc->decimal_point); tmp2 = g_strdup_printf ("0%s0 kB", lc->decimal_point);
g_assert_cmpstr (mu_str_size_s (0), ==, tmp2); g_assert_cmpstr (mu_str_size_s (0), ==, tmp2);
g_free (tmp2); g_free (tmp2);
tmp2 = g_strdup_printf ("100%s0 kB", lc->decimal_point); tmp2 = g_strdup_printf ("100%s0 kB", lc->decimal_point);
g_assert_cmpstr (mu_str_size_s (100000), ==, tmp2); g_assert_cmpstr (mu_str_size_s (100000), ==, tmp2);
g_free (tmp2); g_free (tmp2);
tmp2 = g_strdup_printf ("1%s1 MB", lc->decimal_point); tmp2 = g_strdup_printf ("1%s1 MB", lc->decimal_point);
g_assert_cmpstr (mu_str_size_s (1100*1000), ==, tmp2); g_assert_cmpstr (mu_str_size_s (1100*1000), ==, tmp2);
g_free (tmp2); g_free (tmp2);
} }
@ -85,17 +85,17 @@ test_mu_str_size_01 (void)
static void static void
test_mu_str_size_02 (void) test_mu_str_size_02 (void)
{ {
struct lconv *lc; struct lconv *lc;
char *tmp1, *tmp2; char *tmp1, *tmp2;
lc = localeconv(); lc = localeconv();
tmp2 = g_strdup_printf ("1%s0 MB", lc->decimal_point); tmp2 = g_strdup_printf ("1%s0 MB", lc->decimal_point);
tmp1 = mu_str_size (999999); tmp1 = mu_str_size (999999);
g_assert_cmpstr (tmp1, !=, tmp2); g_assert_cmpstr (tmp1, !=, tmp2);
g_free (tmp1); g_free (tmp1);
g_free (tmp2); g_free (tmp2);
} }
@ -103,26 +103,26 @@ test_mu_str_size_02 (void)
static void static void
test_mu_str_prio_01 (void) test_mu_str_prio_01 (void)
{ {
g_assert_cmpstr(mu_msg_prio_name(MU_MSG_PRIO_LOW), ==, "low"); g_assert_cmpstr(mu_msg_prio_name(MU_MSG_PRIO_LOW), ==, "low");
g_assert_cmpstr(mu_msg_prio_name(MU_MSG_PRIO_NORMAL), ==, "normal"); g_assert_cmpstr(mu_msg_prio_name(MU_MSG_PRIO_NORMAL), ==, "normal");
g_assert_cmpstr(mu_msg_prio_name(MU_MSG_PRIO_HIGH), ==, "high"); g_assert_cmpstr(mu_msg_prio_name(MU_MSG_PRIO_HIGH), ==, "high");
} }
static gboolean static gboolean
ignore_error (const char* log_domain, GLogLevelFlags log_level, ignore_error (const char* log_domain, GLogLevelFlags log_level,
const gchar* msg, gpointer user_data) const gchar* msg, gpointer user_data)
{ {
return FALSE; /* don't abort */ return FALSE; /* don't abort */
} }
static void static void
test_mu_str_prio_02 (void) test_mu_str_prio_02 (void)
{ {
/* this must fail */ /* this must fail */
g_test_log_set_fatal_handler ((GTestLogFatalFunc)ignore_error, NULL); g_test_log_set_fatal_handler ((GTestLogFatalFunc)ignore_error, NULL);
g_assert_cmpstr (mu_msg_prio_name(666), ==, NULL); g_assert_cmpstr (mu_msg_prio_name(666), ==, NULL);
} }
@ -130,50 +130,50 @@ test_mu_str_prio_02 (void)
static void static void
test_mu_str_normalize_01 (void) test_mu_str_normalize_01 (void)
{ {
int i; int i;
struct { struct {
const char* word; const char* word;
const char* norm; const char* norm;
} words [] = { } words [] = {
{ "dantès", "dantes"}, { "dantès", "dantes"},
{ "foo", "foo" }, { "foo", "foo" },
{ "Föö", "foo" }, { "Föö", "foo" },
{ "číslo", "cislo" }, { "číslo", "cislo" },
{ "hÆvý mëÐal ümláõt", "haevy medal umlaot"} { "hÆvý mëÐal ümláõt", "haevy medal umlaot"}
}; };
for (i = 0; i != G_N_ELEMENTS(words); ++i) { for (i = 0; i != G_N_ELEMENTS(words); ++i) {
gchar *str; gchar *str;
str = mu_str_normalize (words[i].word, TRUE); str = mu_str_normalize (words[i].word, TRUE);
g_assert_cmpstr (str, ==, words[i].norm); g_assert_cmpstr (str, ==, words[i].norm);
g_free (str); g_free (str);
} }
} }
static void static void
test_mu_str_normalize_02 (void) test_mu_str_normalize_02 (void)
{ {
int i; int i;
struct { struct {
const char* word; const char* word;
const char* norm; const char* norm;
} words [] = { } words [] = {
{ "DantèS", "DanteS"}, { "DantèS", "DanteS"},
{ "foo", "foo" }, { "foo", "foo" },
{ "Föö", "Foo" }, { "Föö", "Foo" },
{ "číslO", "cislO" }, { "číslO", "cislO" },
{ "hÆvý mëÐal ümláõt", "hAevy meDal umlaot"} { "hÆvý mëÐal ümláõt", "hAevy meDal umlaot"}
}; };
for (i = 0; i != G_N_ELEMENTS(words); ++i) { for (i = 0; i != G_N_ELEMENTS(words); ++i) {
gchar *str; gchar *str;
str = mu_str_normalize (words[i].word, FALSE); str = mu_str_normalize (words[i].word, FALSE);
g_assert_cmpstr (str, ==, words[i].norm); g_assert_cmpstr (str, ==, words[i].norm);
g_free (str); g_free (str);
} }
} }
@ -208,15 +208,15 @@ test_mu_str_display_contact (void)
const char* word; const char* word;
const char* disp; const char* disp;
} words [] = { } words [] = {
{ "\"Foo Bar\" <aap@noot.mies>", "Foo Bar"}, { "\"Foo Bar\" <aap@noot.mies>", "Foo Bar"},
{ "Foo Bar <aap@noot.mies>", "Foo Bar" }, { "Foo Bar <aap@noot.mies>", "Foo Bar" },
{ "<aap@noot.mies>", "aap@noot.mies" }, { "<aap@noot.mies>", "aap@noot.mies" },
{ "foo@bar.nl", "foo@bar.nl" } { "foo@bar.nl", "foo@bar.nl" }
}; };
for (i = 0; i != G_N_ELEMENTS(words); ++i) for (i = 0; i != G_N_ELEMENTS(words); ++i)
g_assert_cmpstr (mu_str_display_contact_s (words[i].word), ==, g_assert_cmpstr (mu_str_display_contact_s (words[i].word), ==,
words[i].disp); words[i].disp);
} }
@ -224,30 +224,30 @@ test_mu_str_display_contact (void)
static void static void
test_mu_str_date_parse_hdwmy (void) test_mu_str_date_parse_hdwmy (void)
{ {
time_t diff; time_t diff;
diff = time(NULL) - mu_str_date_parse_hdwmy ("3h"); diff = time(NULL) - mu_str_date_parse_hdwmy ("3h");
g_assert (diff > 0); g_assert (diff > 0);
g_assert_cmpuint (3 * 60 * 60 - diff, <=, 1); g_assert_cmpuint (3 * 60 * 60 - diff, <=, 1);
diff = time(NULL) - mu_str_date_parse_hdwmy ("5y"); diff = time(NULL) - mu_str_date_parse_hdwmy ("5y");
g_assert (diff > 0); g_assert (diff > 0);
g_assert_cmpuint (5 * 365 * 24 * 60 * 60 - diff, <=, 1); g_assert_cmpuint (5 * 365 * 24 * 60 * 60 - diff, <=, 1);
diff = time(NULL) - mu_str_date_parse_hdwmy ("3m"); diff = time(NULL) - mu_str_date_parse_hdwmy ("3m");
g_assert (diff > 0); g_assert (diff > 0);
g_assert_cmpuint (3 * 30 * 24 * 60 * 60 - diff, <=, 1); g_assert_cmpuint (3 * 30 * 24 * 60 * 60 - diff, <=, 1);
diff = time(NULL) - mu_str_date_parse_hdwmy ("21d"); diff = time(NULL) - mu_str_date_parse_hdwmy ("21d");
g_assert (diff > 0); g_assert (diff > 0);
g_assert_cmpuint (21 * 24 * 60 * 60 - diff, <=, 1); g_assert_cmpuint (21 * 24 * 60 * 60 - diff, <=, 1);
diff = time(NULL) - mu_str_date_parse_hdwmy ("2w"); diff = time(NULL) - mu_str_date_parse_hdwmy ("2w");
g_assert (diff > 0); g_assert (diff > 0);
g_assert_cmpuint (2 * 7 * 24 * 60 * 60 - diff, <=, 1); g_assert_cmpuint (2 * 7 * 24 * 60 * 60 - diff, <=, 1);
g_assert_cmpint (mu_str_date_parse_hdwmy("-1y"),==, (time_t)-1); g_assert_cmpint (mu_str_date_parse_hdwmy("-1y"),==, (time_t)-1);
} }
@ -255,47 +255,47 @@ test_mu_str_date_parse_hdwmy (void)
int int
main (int argc, char *argv[]) main (int argc, char *argv[])
{ {
g_test_init (&argc, &argv, NULL); g_test_init (&argc, &argv, NULL);
/* mu_str_date */ /* mu_str_date */
g_test_add_func ("/mu-str/mu-str-date", g_test_add_func ("/mu-str/mu-str-date",
test_mu_str_date_01); test_mu_str_date_01);
/* mu_str_size */ /* mu_str_size */
g_test_add_func ("/mu-str/mu-str-size-01", g_test_add_func ("/mu-str/mu-str-size-01",
test_mu_str_size_01); test_mu_str_size_01);
g_test_add_func ("/mu-str/mu-str-size-02", g_test_add_func ("/mu-str/mu-str-size-02",
test_mu_str_size_02); test_mu_str_size_02);
/* mu_str_prio */ /* mu_str_prio */
g_test_add_func ("/mu-str/mu-str-prio-01", g_test_add_func ("/mu-str/mu-str-prio-01",
test_mu_str_prio_01); test_mu_str_prio_01);
g_test_add_func ("/mu-str/mu-str-prio-02", g_test_add_func ("/mu-str/mu-str-prio-02",
test_mu_str_prio_02); test_mu_str_prio_02);
/* mu_str_normalize */ /* mu_str_normalize */
g_test_add_func ("/mu-str/mu-str-normalize-01", g_test_add_func ("/mu-str/mu-str-normalize-01",
test_mu_str_normalize_01); test_mu_str_normalize_01);
g_test_add_func ("/mu-str/mu-str-normalize-02", g_test_add_func ("/mu-str/mu-str-normalize-02",
test_mu_str_normalize_02); test_mu_str_normalize_02);
g_test_add_func ("/mu-str/mu-str-ascii-xapian-escape", g_test_add_func ("/mu-str/mu-str-ascii-xapian-escape",
test_mu_str_ascii_xapian_escape); test_mu_str_ascii_xapian_escape);
g_test_add_func ("/mu-str/mu-str-display_contact", g_test_add_func ("/mu-str/mu-str-display_contact",
test_mu_str_display_contact); test_mu_str_display_contact);
g_test_add_func ("/mu-str/mu-str_date_parse_hdwmy", g_test_add_func ("/mu-str/mu-str_date_parse_hdwmy",
test_mu_str_date_parse_hdwmy); test_mu_str_date_parse_hdwmy);
/* FIXME: add tests for mu_str_flags; but note the /* FIXME: add tests for mu_str_flags; but note the
* function simply calls mu_msg_field_str */ * function simply calls mu_msg_field_str */
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);
return g_test_run (); return g_test_run ();
} }