Skip to content

Commit

Permalink
Make test suites compatible with #include <assert.h>
Browse files Browse the repository at this point in the history
Don't use the macro name assert. It's technically permitted as long as
<assert.h> is not included, but it's fragile, because it means the
code and any header that it includes must not include <assert.h>.
  • Loading branch information
gilles-peskine-arm committed Jun 17, 2019
1 parent 8118e46 commit 137d31b
Show file tree
Hide file tree
Showing 3 changed files with 13 additions and 13 deletions.
12 changes: 6 additions & 6 deletions tests/suites/helpers.function
Original file line number Diff line number Diff line change
Expand Up @@ -207,7 +207,7 @@ typedef enum
#define TEST_VALID_PARAM( TEST ) \
TEST_ASSERT( ( TEST, 1 ) );

#define assert(a) if( !( a ) ) \
#define TEST_HELPER_ASSERT(a) if( !( a ) ) \
{ \
mbedtls_fprintf( stderr, "Assertion Failed at %s:%d - %s\n", \
__FILE__, __LINE__, #a ); \
Expand Down Expand Up @@ -373,7 +373,7 @@ static int unhexify( unsigned char *obuf, const char *ibuf )
{
unsigned char c, c2;
int len = strlen( ibuf ) / 2;
assert( strlen( ibuf ) % 2 == 0 ); /* must be even number of bytes */
TEST_HELPER_ASSERT( strlen( ibuf ) % 2 == 0 ); /* must be even number of bytes */

while( *ibuf != 0 )
{
Expand All @@ -385,7 +385,7 @@ static int unhexify( unsigned char *obuf, const char *ibuf )
else if( c >= 'A' && c <= 'F' )
c -= 'A' - 10;
else
assert( 0 );
TEST_HELPER_ASSERT( 0 );

c2 = *ibuf++;
if( c2 >= '0' && c2 <= '9' )
Expand All @@ -395,7 +395,7 @@ static int unhexify( unsigned char *obuf, const char *ibuf )
else if( c2 >= 'A' && c2 <= 'F' )
c2 -= 'A' - 10;
else
assert( 0 );
TEST_HELPER_ASSERT( 0 );

*obuf++ = ( c << 4 ) | c2;
}
Expand Down Expand Up @@ -440,7 +440,7 @@ static unsigned char *zero_alloc( size_t len )
size_t actual_len = ( len != 0 ) ? len : 1;

p = mbedtls_calloc( 1, actual_len );
assert( p != NULL );
TEST_HELPER_ASSERT( p != NULL );

memset( p, 0x00, actual_len );

Expand All @@ -467,7 +467,7 @@ static unsigned char *unhexify_alloc( const char *ibuf, size_t *olen )
return( zero_alloc( *olen ) );

obuf = mbedtls_calloc( 1, *olen );
assert( obuf != NULL );
TEST_HELPER_ASSERT( obuf != NULL );

(void) unhexify( obuf, ibuf );

Expand Down
2 changes: 1 addition & 1 deletion tests/suites/host_test.function
Original file line number Diff line number Diff line change
Expand Up @@ -179,7 +179,7 @@ static int parse_arguments( char *buf, size_t len, char **params,
if( p + 1 < buf + len )
{
cur = p + 1;
assert( cnt < params_len );
TEST_HELPER_ASSERT( cnt < params_len );
params[cnt++] = cur;
}
*p = '\0';
Expand Down
12 changes: 6 additions & 6 deletions tests/suites/target_test.function
Original file line number Diff line number Diff line change
Expand Up @@ -13,11 +13,11 @@
*/
#define INCR_ASSERT(p, start, len, step) do \
{ \
assert( ( p ) >= ( start ) ); \
assert( sizeof( *( p ) ) == sizeof( *( start ) ) ); \
TEST_HELPER_ASSERT( ( p ) >= ( start ) ); \
TEST_HELPER_ASSERT( sizeof( *( p ) ) == sizeof( *( start ) ) ); \
/* <= is checked to support use inside a loop where \
pointer is incremented after reading data. */ \
assert( (uint32_t)( ( ( p ) - ( start ) ) + ( step ) ) <= ( len ) );\
TEST_HELPER_ASSERT( (uint32_t)( ( ( p ) - ( start ) ) + ( step ) ) <= ( len ) );\
( p ) += ( step ); \
} \
while( 0 )
Expand Down Expand Up @@ -127,7 +127,7 @@ uint8_t * receive_data( uint32_t * data_len )
/* Read data length */
*data_len = receive_uint32();
data = (uint8_t *)malloc( *data_len );
assert( data != NULL );
TEST_HELPER_ASSERT( data != NULL );

greentea_getc(); // read ';' received after key i.e. *data_len

Expand Down Expand Up @@ -221,7 +221,7 @@ void ** parse_parameters( uint8_t count, uint8_t * data, uint32_t data_len,
hex_count = find_hex_count(count, data, data_len);

params = (void **)malloc( sizeof( void *) * ( count + hex_count ) );
assert( params != NULL );
TEST_HELPER_ASSERT( params != NULL );
cur = params;

p = data;
Expand Down Expand Up @@ -360,7 +360,7 @@ int execute_tests( int args, const char ** argv )
{
/* Read dependency count */
count = *p;
assert( count < data_len );
TEST_HELPER_ASSERT( count < data_len );
INCR_ASSERT( p, data, data_len, sizeof( uint8_t ) );
ret = verify_dependencies( count, p );
if ( ret != DEPENDENCY_SUPPORTED )
Expand Down

0 comments on commit 137d31b

Please sign in to comment.