xash3d-fwgs/engine/common/tests.h

65 lines
1.4 KiB
C

#ifndef TESTS_H
#define TESTS_H
#if XASH_ENGINE_TESTS
struct tests_stats_s
{
uint passed;
uint failed;
};
extern struct tests_stats_s tests_stats;
#define TRUN( x ) Msg( "Starting " #x "\n" ); \
x; \
Msg( "Finished " #x "\n" )
#define _TASSERT( exp, msg ) \
if( exp ) \
{ \
tests_stats.failed++; \
msg; \
} \
else tests_stats.passed++;
#define TASSERT( exp ) \
_TASSERT( !(exp), Msg( S_ERROR "assert failed at %s:%i\n", __FILE__, __LINE__ ) )
#define TASSERT_EQi( val1, val2 ) \
_TASSERT( ( val1 ) != ( val2 ), Msg( S_ERROR "assert failed at %s:%i, \"%d\" != \"%d\"\n", __FILE__, __LINE__, val1, val2 ))
#define TASSERT_STR( str1, str2 ) \
_TASSERT( Q_strcmp(( str1 ), ( str2 )), Msg( S_ERROR "assert failed at %s:%i, \"%s\" != \"%s\"\n", __FILE__, __LINE__, ( str1 ), ( str2 )))
void Test_RunImagelib( void );
void Test_RunLibCommon( void );
void Test_RunCommon( void );
void Test_RunCmd( void );
void Test_RunCvar( void );
void Test_RunCon( void );
void Test_RunVOX( void );
void Test_RunIPFilter( void );
void Test_RunGamma( void );
void Test_RunDelta( void );
#define TEST_LIST_0 \
Test_RunLibCommon(); \
Test_RunCommon(); \
Test_RunCmd(); \
Test_RunCvar(); \
Test_RunIPFilter(); \
Test_RunDelta();
#define TEST_LIST_0_CLIENT \
Test_RunCon(); \
Test_RunGamma();
#define TEST_LIST_1 \
Test_RunImagelib();
#define TEST_LIST_1_CLIENT \
Test_RunVOX();
#endif
#endif /* TESTS_H */