mirror of
https://github.com/transmission/transmission
synced 2025-03-19 02:05:32 +00:00
(trunk libT) add unit test for the new history module
This commit is contained in:
parent
3a0626f1fe
commit
eab787ac7d
1 changed files with 62 additions and 0 deletions
62
libtransmission/history-test.c
Normal file
62
libtransmission/history-test.c
Normal file
|
@ -0,0 +1,62 @@
|
|||
#include <stdio.h>
|
||||
|
||||
#include "transmission.h"
|
||||
#include "history.h"
|
||||
|
||||
#undef VERBOSE
|
||||
|
||||
static int test = 0;
|
||||
|
||||
#ifdef VERBOSE
|
||||
#define check( A ) \
|
||||
{ \
|
||||
++test; \
|
||||
if( A ){ \
|
||||
fprintf( stderr, "PASS test #%d (%s, %d)\n", test, __FILE__, __LINE__ ); \
|
||||
} else { \
|
||||
fprintf( stderr, "FAIL test #%d (%s, %d)\n", test, __FILE__, __LINE__ ); \
|
||||
return test; \
|
||||
} \
|
||||
}
|
||||
#else
|
||||
#define check( A ) \
|
||||
{ \
|
||||
++test; \
|
||||
if( !( A ) ){ \
|
||||
fprintf( stderr, "FAIL test #%d (%s, %d)\n", test, __FILE__, __LINE__ ); \
|
||||
return test; \
|
||||
} \
|
||||
}
|
||||
#endif
|
||||
|
||||
static int
|
||||
test1( void )
|
||||
{
|
||||
tr_recentHistory * h;
|
||||
|
||||
h = tr_historyNew( 60, 10 );
|
||||
tr_historyAdd( h, 10000, 1 );
|
||||
check( (int)tr_historyGet( h, 12000, 1000 ) == 0 )
|
||||
check( (int)tr_historyGet( h, 12000, 3000 ) == 1 )
|
||||
check( (int)tr_historyGet( h, 12000, 5000 ) == 1 )
|
||||
tr_historyAdd( h, 20000, 1 );
|
||||
check( (int)tr_historyGet( h, 22000, 1000 ) == 0 )
|
||||
check( (int)tr_historyGet( h, 22000, 3000 ) == 1 )
|
||||
check( (int)tr_historyGet( h, 22000, 15000 ) == 2 )
|
||||
check( (int)tr_historyGet( h, 22000, 20000 ) == 2 )
|
||||
tr_historyFree( h );
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
int
|
||||
main( void )
|
||||
{
|
||||
int i;
|
||||
|
||||
if( ( i = test1( ) ) )
|
||||
return i;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
Loading…
Add table
Reference in a new issue