test-main.c revision 1fbf6fa49c90010f3f255f60944920ef8908701c
1d65b73884cb876276b6bd73f4b1dfcd920984a8aHavoc Pennington/* -*- mode: C; c-file-style: "gnu" -*- */ 2d65b73884cb876276b6bd73f4b1dfcd920984a8aHavoc Pennington/* test-main.c main() for make check 3d65b73884cb876276b6bd73f4b1dfcd920984a8aHavoc Pennington * 4d65b73884cb876276b6bd73f4b1dfcd920984a8aHavoc Pennington * Copyright (C) 2003 Red Hat, Inc. 5d65b73884cb876276b6bd73f4b1dfcd920984a8aHavoc Pennington * 6d65b73884cb876276b6bd73f4b1dfcd920984a8aHavoc Pennington * Licensed under the Academic Free License version 1.2 7d65b73884cb876276b6bd73f4b1dfcd920984a8aHavoc Pennington * 8d65b73884cb876276b6bd73f4b1dfcd920984a8aHavoc Pennington * This program is free software; you can redistribute it and/or modify 9d65b73884cb876276b6bd73f4b1dfcd920984a8aHavoc Pennington * it under the terms of the GNU General Public License as published by 10d65b73884cb876276b6bd73f4b1dfcd920984a8aHavoc Pennington * the Free Software Foundation; either version 2 of the License, or 11d65b73884cb876276b6bd73f4b1dfcd920984a8aHavoc Pennington * (at your option) any later version. 12d65b73884cb876276b6bd73f4b1dfcd920984a8aHavoc Pennington * 13d65b73884cb876276b6bd73f4b1dfcd920984a8aHavoc Pennington * This program is distributed in the hope that it will be useful, 14d65b73884cb876276b6bd73f4b1dfcd920984a8aHavoc Pennington * but WITHOUT ANY WARRANTY; without even the implied warranty of 15d65b73884cb876276b6bd73f4b1dfcd920984a8aHavoc Pennington * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16d65b73884cb876276b6bd73f4b1dfcd920984a8aHavoc Pennington * GNU General Public License for more details. 17d65b73884cb876276b6bd73f4b1dfcd920984a8aHavoc Pennington * 18d65b73884cb876276b6bd73f4b1dfcd920984a8aHavoc Pennington * You should have received a copy of the GNU General Public License 19d65b73884cb876276b6bd73f4b1dfcd920984a8aHavoc Pennington * along with this program; if not, write to the Free Software 20d65b73884cb876276b6bd73f4b1dfcd920984a8aHavoc Pennington * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 21d65b73884cb876276b6bd73f4b1dfcd920984a8aHavoc Pennington * 22d65b73884cb876276b6bd73f4b1dfcd920984a8aHavoc Pennington */ 23d65b73884cb876276b6bd73f4b1dfcd920984a8aHavoc Pennington 24d65b73884cb876276b6bd73f4b1dfcd920984a8aHavoc Pennington#include "test.h" 253bea935316ff048e68dea6a26c2e8e9fd314477fHavoc Pennington#include <stdio.h> 263bea935316ff048e68dea6a26c2e8e9fd314477fHavoc Pennington#include <stdlib.h> 273bea935316ff048e68dea6a26c2e8e9fd314477fHavoc Pennington#include <dbus/dbus-string.h> 283bea935316ff048e68dea6a26c2e8e9fd314477fHavoc Pennington#include <dbus/dbus-sysdeps.h> 293bea935316ff048e68dea6a26c2e8e9fd314477fHavoc Pennington 303bea935316ff048e68dea6a26c2e8e9fd314477fHavoc Penningtonstatic void 313bea935316ff048e68dea6a26c2e8e9fd314477fHavoc Penningtondie (const char *failure) 323bea935316ff048e68dea6a26c2e8e9fd314477fHavoc Pennington{ 333bea935316ff048e68dea6a26c2e8e9fd314477fHavoc Pennington fprintf (stderr, "Unit test failed: %s\n", failure); 343bea935316ff048e68dea6a26c2e8e9fd314477fHavoc Pennington exit (1); 353bea935316ff048e68dea6a26c2e8e9fd314477fHavoc Pennington} 36d65b73884cb876276b6bd73f4b1dfcd920984a8aHavoc Pennington 37d65b73884cb876276b6bd73f4b1dfcd920984a8aHavoc Penningtonint 38d65b73884cb876276b6bd73f4b1dfcd920984a8aHavoc Penningtonmain (int argc, char **argv) 39d65b73884cb876276b6bd73f4b1dfcd920984a8aHavoc Pennington{ 40d65b73884cb876276b6bd73f4b1dfcd920984a8aHavoc Pennington#ifdef DBUS_BUILD_TESTS 413bea935316ff048e68dea6a26c2e8e9fd314477fHavoc Pennington const char *dir; 423bea935316ff048e68dea6a26c2e8e9fd314477fHavoc Pennington DBusString test_data_dir; 433bea935316ff048e68dea6a26c2e8e9fd314477fHavoc Pennington 443bea935316ff048e68dea6a26c2e8e9fd314477fHavoc Pennington if (argc > 1) 453bea935316ff048e68dea6a26c2e8e9fd314477fHavoc Pennington dir = argv[1]; 463bea935316ff048e68dea6a26c2e8e9fd314477fHavoc Pennington else 473bea935316ff048e68dea6a26c2e8e9fd314477fHavoc Pennington dir = _dbus_getenv ("DBUS_TEST_DATA"); 483bea935316ff048e68dea6a26c2e8e9fd314477fHavoc Pennington 493bea935316ff048e68dea6a26c2e8e9fd314477fHavoc Pennington if (dir == NULL) 503bea935316ff048e68dea6a26c2e8e9fd314477fHavoc Pennington dir = ""; 51d65b73884cb876276b6bd73f4b1dfcd920984a8aHavoc Pennington 523bea935316ff048e68dea6a26c2e8e9fd314477fHavoc Pennington _dbus_string_init_const (&test_data_dir, dir); 531fbf6fa49c90010f3f255f60944920ef8908701cHavoc Pennington 541fbf6fa49c90010f3f255f60944920ef8908701cHavoc Pennington printf ("%s: Running message dispatch test\n", argv[0]); 553bea935316ff048e68dea6a26c2e8e9fd314477fHavoc Pennington if (!bus_dispatch_test (&test_data_dir)) 563bea935316ff048e68dea6a26c2e8e9fd314477fHavoc Pennington die ("dispatch"); 574c95a9782c65f88e2904c44abeb734a1b00f6353Havoc Pennington 581fbf6fa49c90010f3f255f60944920ef8908701cHavoc Pennington printf ("%s: Success\n", argv[0]); 59d65b73884cb876276b6bd73f4b1dfcd920984a8aHavoc Pennington 60d65b73884cb876276b6bd73f4b1dfcd920984a8aHavoc Pennington return 0; 61d65b73884cb876276b6bd73f4b1dfcd920984a8aHavoc Pennington#else /* DBUS_BUILD_TESTS */ 624c95a9782c65f88e2904c44abeb734a1b00f6353Havoc Pennington 634c95a9782c65f88e2904c44abeb734a1b00f6353Havoc Pennington printf ("Not compiled with test support\n"); 644c95a9782c65f88e2904c44abeb734a1b00f6353Havoc Pennington 65d65b73884cb876276b6bd73f4b1dfcd920984a8aHavoc Pennington return 0; 66d65b73884cb876276b6bd73f4b1dfcd920984a8aHavoc Pennington#endif 67d65b73884cb876276b6bd73f4b1dfcd920984a8aHavoc Pennington} 68