add changelog and NEWS entry
[gnuk/gnuk.git] / polarssl-0.14.0 / tests / suites / test_suite_version.function
1 BEGIN_HEADER
2 #include <polarssl/version.h>
3 END_HEADER
4
5 BEGIN_CASE
6 check_compiletime_version:version_str
7 {
8     char build_str[100];
9     char build_str_full[100];
10     unsigned int build_int;
11
12     memset( build_str, 0, 100 );
13     memset( build_str_full, 0, 100 );
14
15     snprintf (build_str, 100, "%d.%d.%d", POLARSSL_VERSION_MAJOR,
16         POLARSSL_VERSION_MINOR, POLARSSL_VERSION_PATCH );
17
18     snprintf( build_str_full, 100, "PolarSSL %d.%d.%d", POLARSSL_VERSION_MAJOR,
19         POLARSSL_VERSION_MINOR, POLARSSL_VERSION_PATCH );
20
21     build_int = POLARSSL_VERSION_MAJOR << 24 |
22             POLARSSL_VERSION_MINOR << 16 |
23             POLARSSL_VERSION_PATCH << 8;
24
25     TEST_ASSERT( build_int == POLARSSL_VERSION_NUMBER );
26     TEST_ASSERT( strcmp( build_str, POLARSSL_VERSION_STRING ) == 0 );
27     TEST_ASSERT( strcmp( build_str_full, POLARSSL_VERSION_STRING_FULL ) == 0 );
28     TEST_ASSERT( strcmp( {version_str}, POLARSSL_VERSION_STRING ) == 0 );
29 }
30 END_CASE
31
32 BEGIN_CASE
33 check_runtime_version:version_str
34 {
35     char build_str[100];
36     char get_str[100];
37     char build_str_full[100];
38     char get_str_full[100];
39     unsigned int get_int;
40
41     memset( build_str, 0, 100 );
42     memset( get_str, 0, 100 );
43     memset( build_str_full, 0, 100 );
44     memset( get_str_full, 0, 100 );
45
46     get_int = version_get_number();
47     version_get_string( get_str );
48     version_get_string_full( get_str_full );
49
50     snprintf( build_str, 100, "%d.%d.%d",
51         (get_int >> 24) & 0xFF,
52         (get_int >> 16) & 0xFF,
53         (get_int >> 8) & 0xFF );
54     snprintf( build_str_full, 100, "PolarSSL %s", {version_str} );
55
56     TEST_ASSERT( strcmp( build_str, {version_str} ) == 0 );
57     TEST_ASSERT( strcmp( build_str_full, get_str_full ) == 0 );
58     TEST_ASSERT( strcmp( {version_str}, get_str ) == 0 );
59 }
60 END_CASE