Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
[test] Update snprintf_ok() to use okx()
Signed-off-by: Michael Brown <mcb30@ipxe.org>
  • Loading branch information
mcb30 committed Apr 12, 2016
1 parent 597521e commit 320488d
Showing 1 changed file with 25 additions and 14 deletions.
39 changes: 25 additions & 14 deletions src/tests/vsprintf_test.c
Expand Up @@ -39,21 +39,32 @@ FILE_LICENCE ( GPL2_OR_LATER_OR_UBDL );
/**
* Report an snprintf() test result
*
* @v len Buffer length
* @v expected Expected result
* @v file Test code file
* @v line Test code line
* @v format Format string
* @v ... Arguments
*/
#define snprintf_ok( len, result, format, ... ) do { \
char actual[ (len) ]; \
const char expected[] = result; \
size_t actual_len; \
\
actual_len = snprintf ( actual, sizeof ( actual ), \
format, ##__VA_ARGS__ ); \
ok ( actual_len >= strlen ( result ) ); \
ok ( strcmp ( actual, expected ) == 0 ); \
if ( strcmp ( actual, expected ) != 0 ) { \
DBG ( "SNPRINTF expected \"%s\", got \"%s\"\n", \
expected, actual ); \
} \
} while ( 0 )
static void snprintf_okx ( size_t len, const char *expected, const char *file,
unsigned int line, const char *fmt, ... ) {
char actual[len];
size_t actual_len;
va_list args;

va_start ( args, fmt );
actual_len = vsnprintf ( actual, sizeof ( actual ), fmt, args );
va_end ( args );
okx ( actual_len >= strlen ( expected ), file, line );
okx ( strcmp ( actual, expected ) == 0, file, line );
if ( strcmp ( actual, expected ) != 0 ) {
DBG ( "SNPRINTF expected \"%s\", got \"%s\"\n",
expected, actual );
}
}
#define snprintf_ok( len, result, format, ... ) \
snprintf_okx ( len, result, __FILE__, __LINE__, format, \
##__VA_ARGS__ )

/**
* Perform vsprintf() self-tests
Expand Down

0 comments on commit 320488d

Please sign in to comment.