gnucash/test-templates/test-module.c
Geert Janssens 84b2428192 Tests: harmonize test initialization
In particular, use qof_init instead of g_type_init. The former
calls the latter by default. Also our current engine code is
heavily dependent on gobject, so it makes sense to initialize it
as early on as possible. Having once central place to do so
will make it easier to fix this if ever we move away from gobject.

git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@22943 57a11ea4-9604-0410-9ed3-97b8803252fd
2013-05-03 12:03:53 +00:00

53 lines
2.3 KiB
C

/********************************************************************
* test_module.c: Example GLib g_test test execution file. *
* Copyright 2011 John Ralls <jralls@ceridwen.us> *
* *
* This program is free software; you can redistribute it and/or *
* modify it under the terms of the GNU General Public License as *
* published by the Free Software Foundation; either version 2 of *
* the License, or (at your option) any later version. *
* *
* This program is distributed in the hope that it will be useful, *
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
* GNU General Public License for more details. *
* *
* You should have received a copy of the GNU General Public License*
* along with this program; if not, contact: *
* *
* Free Software Foundation Voice: +1-617-542-5942 *
* 51 Franklin Street, Fifth Floor Fax: +1-617-542-2652 *
* Boston, MA 02110-1301, USA gnu@gnu.org *
\********************************************************************/
#include <glib.h>
/* Declare the test suite assembly functions (see test-suite.c) for
* each sub-suite; avoids having header files. */
extern GTestSuite *test_suite_module1();
extern GTestSuite *test_suite_module2();
extern GTestSuite *test_suite_module3();
extern GTestSuite *test_suite_module4();
int
main (int argc,
char *argv[])
{
qof_init(); /* You may or may not need this, depending on
* whether the module you're testing or any
* dependencies use GObject. */
qof_log_init_filename_special("/dev/null"); /* Initialize the
* gnucash logging system. Your tests will
* crash on the first logging call otherwise */
g_test_init ( &argc, &argv, NULL ); /* initialize test program */
test_suite_module1(); /* Call each suite assembly function */
test_suite_module2();
test_suite_module3();
test_suite_module4();
return g_test_run(); /* Run the result */
}