source: trunk/libtransmission/test-peer-id.c @ 6795

Last change on this file since 6795 was 6795, checked in by charles, 13 years ago

run libT, cli, daemon, gtk through the source-code formatter "uncrustify" as promised/threatened

  • Property svn:keywords set to Date Rev Author Id
File size: 1.0 KB
Line 
1#include <stdio.h>
2#include <stdlib.h>
3#include <string.h>
4#include "transmission.h"
5#include "utils.h"
6
7#define VERBOSE 0
8
9#define check( A ) \
10    { \
11        ++test; \
12        if( A ){ \
13            if( VERBOSE ) \
14                fprintf( stderr, "PASS test #%d (%s, %d)\n", test, __FILE__,\
15                         __LINE__ );\
16        } else { \
17            if( VERBOSE ) \
18                fprintf( stderr, "FAIL test #%d (%s, %d)\n", test, __FILE__,\
19                         __LINE__ );\
20            return test; \
21        } \
22    }
23
24int
25main( void )
26{
27    int i;
28    int test = 0;
29
30    for( i = 0; i < 100000; ++i )
31    {
32        int       j;
33        int       val = 0;
34        uint8_t * pch = tr_peerIdNew( );
35
36        check( strlen( (char*)pch ) == 20 );
37        check( !memcmp( pch, PEERID_PREFIX, 8 ) );
38
39        for( j = 8; j < 20; ++j )
40        {
41            char tmp[2] = { pch[j], '\0' };
42            val += strtoul( tmp, NULL, 36 );
43        }
44
45        check( ( val % 36 ) == 0 );
46
47        tr_free( pch );
48    }
49
50    return 0;
51}
52
Note: See TracBrowser for help on using the repository browser.