/[ascend]/trunk/test/printutil.c
ViewVC logotype

Contents of /trunk/test/printutil.c

Parent Directory Parent Directory | Revision Log Revision Log


Revision 59 - (show annotations) (download) (as text)
Sun Oct 30 01:38:20 2005 UTC (15 years, 5 months ago) by jds
File MIME type: text/x-csrc
File size: 1745 byte(s)
- prototype unit test suite based on CUnit added.
- unit tests for base/generic/general and base/generic/utilites added.
- 2nd manual rework of doxygen documentation in general and utilities.
- bug fixes (mostly general & utilities) found during test development.
- added asc_assert prototype to redirect failures to Asc_Panic() and enable decoupling assertions from NDEBUG.
- some modifications of interface & implementation to facilitate testing.
- utilities/ascPrint & utilities/ascMalloc functions now always included in base libs to minimize recompilation when an interface chooses different options.
1 /*
2 * Assert implementation override for ASCEND unit tests
3 *
4 * Copyright (C) 2005 Jerry St.Clair
5 *
6 * This file is part of the Ascend Environment.
7 *
8 * The Ascend Environment is free software; you can redistribute it
9 * and/or modify it under the terms of the GNU General Public License as
10 * published by the Free Software Foundation; either version 2 of the
11 * License, or (at your option) any later version.
12 *
13 * The Ascend Environment is distributed in hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16 * General Public License for more details.
17 *
18 * You should have received a copy of the GNU General Public License
19 * along with the program; if not, write to the Free Software Foundation,
20 * Inc., 675 Mass Ave, Cambridge, MA 02139 USA. Check the file named
21 * COPYING.
22 */
23
24 #include <stdio.h>
25 #include <stdlib.h>
26 #include "utilities/ascConfig.h"
27 #include "utilities/ascPrintType.h"
28 #include "utilities/ascPrint.h"
29 #include "compiler/redirectFile.h"
30
31 #define f_vtable_name "asc_test_vtable"
32 static struct Asc_PrintVTable f_vtable = {f_vtable_name, vfprintf, fflush, NULL};
33 static int f_vtable_registered = FALSE;
34
35 int test_enable_printing(void)
36 {
37 if (TRUE == f_vtable_registered) {
38 return TRUE;
39 }
40 else {
41 f_vtable_registered = TRUE;
42 return (0 == Asc_PrintPushVTable(&f_vtable)) ? TRUE : FALSE ;
43 }
44 }
45
46
47 void test_disable_printing(void)
48 {
49 if (TRUE == f_vtable_registered) {
50 f_vtable_registered = FALSE;
51 Asc_PrintRemoveVTable(f_vtable_name);
52 }
53 }
54
55
56 int test_printing_enabled(void)
57 {
58 return f_vtable_registered;
59 }
60

john.pye@anu.edu.au
ViewVC Help
Powered by ViewVC 1.1.22