]> pd.if.org Git - liblfds/blob - liblfds/liblfds7.0.0/test/src/misc.c
Initial import (all versions, including the new 7.1.0)
[liblfds] / liblfds / liblfds7.0.0 / test / src / misc.c
1 /***** includes *****/
2 #include "internal.h"
3
4
5
6
7
8 /****************************************************************************/
9 void internal_display_test_name( char *format_string, ... )
10 {
11   va_list
12     va;
13
14   assert( format_string != NULL );
15
16   va_start( va, format_string );
17
18   vprintf( format_string, va );
19
20   printf( "..." );
21
22   va_end( va );
23
24   fflush( stdout );
25
26   return;
27 }
28
29
30
31
32
33 /****************************************************************************/
34 void internal_display_test_result( lfds700_pal_uint_t number_name_dvs_pairs, ... )
35 {
36   char
37     *name;
38
39   enum flag
40     passed_flag = RAISED;
41
42   enum lfds700_misc_validity
43     dvs;
44
45   lfds700_pal_uint_t
46     loop;
47
48   va_list
49     va;
50
51   // TRD : number_name_dvs_pairs can be any value in its range
52
53   va_start( va, number_name_dvs_pairs );
54
55   for( loop = 0 ; loop < number_name_dvs_pairs ; loop++ )
56   {
57     name = va_arg( va, char * );
58     dvs = va_arg( va, enum lfds700_misc_validity );
59
60     if( dvs != LFDS700_MISC_VALIDITY_VALID )
61     {
62       passed_flag = LOWERED;
63       break;
64     }
65   }
66
67   va_end( va );
68
69   if( passed_flag == RAISED )
70     puts( "passed" );
71
72   if( passed_flag == LOWERED )
73   {
74     printf( "failed (" );
75
76     va_start( va, number_name_dvs_pairs );
77
78     for( loop = 0 ; loop < number_name_dvs_pairs ; loop++ )
79     {
80       name = va_arg( va, char * );
81       dvs = va_arg( va, enum lfds700_misc_validity );
82
83       printf( "%s ", name );
84       internal_display_data_structure_validity( dvs );
85
86       if( loop+1 < number_name_dvs_pairs )
87         printf( ", " );
88     }
89
90     va_end( va );
91
92     printf( ")\n" );
93
94     /* TRD : quick hack
95              the whole test programme needs rewriting
96              and for now I just want to make it so we
97              exit with failure upon any test failing
98     */
99
100     exit( EXIT_FAILURE );
101   }
102
103   return;
104 }
105
106
107
108
109
110 /****************************************************************************/
111 void internal_display_data_structure_validity( enum lfds700_misc_validity dvs )
112 {
113   char
114     *string = NULL;
115
116   switch( dvs )
117   {
118     case LFDS700_MISC_VALIDITY_VALID:
119       string = "valid";
120     break;
121
122     case LFDS700_MISC_VALIDITY_INVALID_LOOP:
123       string = "invalid - loop detected";
124     break;
125
126     case LFDS700_MISC_VALIDITY_INVALID_ORDER:
127       string = "invalid - invalid order detected";
128     break;
129
130     case LFDS700_MISC_VALIDITY_INVALID_MISSING_ELEMENTS:
131       string = "invalid - missing elements";
132     break;
133
134     case LFDS700_MISC_VALIDITY_INVALID_ADDITIONAL_ELEMENTS:
135       string = "invalid - additional elements";
136     break;
137
138     case LFDS700_MISC_VALIDITY_INVALID_TEST_DATA:
139       string = "invalid - invalid test data";
140     break;
141   }
142
143   printf( "%s", string );
144
145   return;
146 }
147
148
149
150
151
152 /****************************************************************************/
153 void internal_show_version()
154 {
155   char const
156     *version_and_build_string;
157
158   printf( "test %s (%s, %s) (" __DATE__ " " __TIME__ ")\n", LFDS700_TEST_VERSION_STRING, BUILD_TYPE_STRING, MODE_TYPE_STRING );
159
160   lfds700_misc_query( LFDS700_MISC_QUERY_GET_BUILD_AND_VERSION_STRING, NULL, (void **) &version_and_build_string );
161
162   printf( "%s\n", version_and_build_string );
163
164   return;
165 }
166
167
168
169
170
171 /****************************************************************************/
172 #pragma warning( disable : 4100 )
173
174 void internal_logical_core_id_element_cleanup_callback( struct lfds700_list_asu_state *lasus, struct lfds700_list_asu_element *lasue )
175 {
176   struct test_pal_logical_processor
177     *lp;
178
179   assert( lasus != NULL );
180   assert( lasue != NULL );
181
182   lp = LFDS700_LIST_ASU_GET_VALUE_FROM_ELEMENT( *lasue );
183
184   util_aligned_free( lp );
185
186   return;
187 }
188
189 #pragma warning( default : 4100 )
190
191