* tests: add unit-tests for 'mu cfind'

This commit is contained in:
Dirk-Jan C. Binnema 2011-05-19 19:55:50 +03:00
parent 53a2a5c3ab
commit 51fb5fe8e9
3 changed files with 290 additions and 274 deletions

View File

@ -64,6 +64,11 @@ TEST_PROGS += test-mu-cmd
test_mu_cmd_SOURCES= test-mu-cmd.c dummy.cc
test_mu_cmd_LDADD= libtestmucommon.la
TEST_PROGS += test-mu-cmd-cfind
test_mu_cmd_cfind_SOURCES= test-mu-cmd-cfind.c dummy.cc
test_mu_cmd_cfind_LDADD= libtestmucommon.la
TEST_PROGS += test-mu-msg
test_mu_msg_SOURCES= test-mu-msg.c dummy.cc
test_mu_msg_LDADD= libtestmucommon.la

View File

@ -1,4 +1,5 @@
/*
/* -*- mode: c; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*-
**
** Copyright (C) 2008-2011 Dirk-Jan C. Binnema <djcb@djcbsoftware.nl>
**
** This program is free software; you can redistribute it and/or modify it
@ -44,7 +45,8 @@ fill_database (void)
tmpdir = test_mu_common_get_random_tmpdir();
cmdline = g_strdup_printf ("%s index --muhome=%s --maildir=%s"
" --quiet",
MU_PROGRAM, tmpdir, MU_TESTMAILDIR2);
MU_PROGRAM,
tmpdir, MU_TESTMAILDIR2);
g_assert (g_spawn_command_line_sync (cmdline, NULL, NULL,
NULL, NULL));
@ -171,7 +173,8 @@ test_mu_find_04 (void)
muhome = fill_database ();
g_assert (muhome);
cmdline = g_strdup_printf ("%s --muhome=%cfoo%cbar%cnonexistent find f:socrates",
cmdline = g_strdup_printf ("%s --muhome=%cfoo%cbar%cnonexistent "
"find f:socrates",
MU_PROGRAM,
G_DIR_SEPARATOR,
G_DIR_SEPARATOR,
@ -208,7 +211,8 @@ test_mu_extract_01 (void)
/* g_print ("[%s]", cmdline); */
output = erroutput = NULL;
g_assert (g_spawn_command_line_sync (cmdline, &output, &erroutput, NULL, NULL));
g_assert (g_spawn_command_line_sync (cmdline, &output, &erroutput,
NULL, NULL));
g_assert_cmpstr (output,
==,
"MIME-parts in this message:\n"
@ -250,7 +254,8 @@ test_mu_extract_02 (void)
g_assert (g_mkdir_with_parents (tmpdir, 0700) == 0);
cmdline = g_strdup_printf ("%s extract --muhome=%s -a --target-dir=%s %s%cFoo%ccur%cmail5",
cmdline = g_strdup_printf ("%s extract --muhome=%s -a "
"--target-dir=%s %s%cFoo%ccur%cmail5",
MU_PROGRAM,
tmpdir,
tmpdir,
@ -323,19 +328,23 @@ test_mu_extract_04 (void)
g_assert (g_mkdir_with_parents (tmpdir, 0700) == 0);
cmdline = g_strdup_printf ("%s extract --muhome=%s -a --target-dir=%s %s%cFoo%ccur%cmail5",
cmdline = g_strdup_printf ("%s extract --muhome=%s -a "
"--target-dir=%s %s%cFoo%ccur%cmail5",
MU_PROGRAM, tmpdir, tmpdir,
MU_TESTMAILDIR2, G_DIR_SEPARATOR,
G_DIR_SEPARATOR, G_DIR_SEPARATOR);
g_assert (g_spawn_command_line_sync (cmdline, &output, &erroutput, NULL, NULL));
g_assert (g_spawn_command_line_sync (cmdline, &output, &erroutput,
NULL, NULL));
g_assert_cmpstr (output, ==, "");
g_assert_cmpstr (erroutput, ==, "");
g_free (erroutput);
g_free (output);
/* now, it should fail, because we don't allow overwrites without --overwrite */
g_assert (g_spawn_command_line_sync (cmdline, &output, &erroutput, NULL, NULL));
/* now, it should fail, because we don't allow overwrites
* without --overwrite */
g_assert (g_spawn_command_line_sync (cmdline, &output, &erroutput,
NULL, NULL));
g_assert_cmpstr (output, ==, "");
g_assert_cmpstr (erroutput, !=, "");
g_free (erroutput);
@ -345,9 +354,11 @@ test_mu_extract_04 (void)
/* this should work now, because we have specified --overwrite */
cmdline = g_strdup_printf ("%s extract --muhome=%s -a --overwrite "
"--target-dir=%s %s%cFoo%ccur%cmail5",
MU_PROGRAM, tmpdir, tmpdir, MU_TESTMAILDIR2, G_DIR_SEPARATOR,
MU_PROGRAM, tmpdir, tmpdir,
MU_TESTMAILDIR2, G_DIR_SEPARATOR,
G_DIR_SEPARATOR, G_DIR_SEPARATOR);
g_assert (g_spawn_command_line_sync (cmdline, &output, &erroutput, NULL, NULL));
g_assert (g_spawn_command_line_sync (cmdline, &output, &erroutput,
NULL, NULL));
g_assert_cmpstr (output, ==, "");
g_assert_cmpstr (erroutput, ==, "");
g_free (erroutput);

View File

@ -171,7 +171,7 @@ main (int argc, char *argv[])
int rv;
g_test_init (&argc, &argv, NULL);
g_test_add_func ("/mu-contact/test-mu-contacts-01", test_mu_contacts_01);
g_test_add_func ("/mu-contacts/test-mu-contacts-01", test_mu_contacts_01);
g_log_set_handler (NULL,
G_LOG_LEVEL_MASK | G_LOG_FLAG_FATAL| G_LOG_FLAG_RECURSION,