blob: 06190074c0b71701cd77e8ea261e8e8b17f4169a [file] [log] [blame]
Paul Bakker33b43f12013-08-20 11:48:36 +02001/* BEGIN_HEADER */
Paul Bakker3ac1b2d2010-06-18 22:47:29 +00002#include <polarssl/version.h>
Paul Bakker33b43f12013-08-20 11:48:36 +02003/* END_HEADER */
Paul Bakker3ac1b2d2010-06-18 22:47:29 +00004
Paul Bakker33b43f12013-08-20 11:48:36 +02005/* BEGIN_DEPENDENCIES
6 * depends_on:POLARSSL_VERSION_C
7 * END_DEPENDENCIES
8 */
Paul Bakker5690efc2011-05-26 13:16:06 +00009
Paul Bakker33b43f12013-08-20 11:48:36 +020010/* BEGIN_CASE */
11void check_compiletime_version( char *version_str )
Paul Bakker3ac1b2d2010-06-18 22:47:29 +000012{
13 char build_str[100];
14 char build_str_full[100];
15 unsigned int build_int;
16
17 memset( build_str, 0, 100 );
18 memset( build_str_full, 0, 100 );
19
20 snprintf (build_str, 100, "%d.%d.%d", POLARSSL_VERSION_MAJOR,
21 POLARSSL_VERSION_MINOR, POLARSSL_VERSION_PATCH );
22
23 snprintf( build_str_full, 100, "PolarSSL %d.%d.%d", POLARSSL_VERSION_MAJOR,
24 POLARSSL_VERSION_MINOR, POLARSSL_VERSION_PATCH );
25
26 build_int = POLARSSL_VERSION_MAJOR << 24 |
27 POLARSSL_VERSION_MINOR << 16 |
28 POLARSSL_VERSION_PATCH << 8;
29
30 TEST_ASSERT( build_int == POLARSSL_VERSION_NUMBER );
31 TEST_ASSERT( strcmp( build_str, POLARSSL_VERSION_STRING ) == 0 );
32 TEST_ASSERT( strcmp( build_str_full, POLARSSL_VERSION_STRING_FULL ) == 0 );
Paul Bakker33b43f12013-08-20 11:48:36 +020033 TEST_ASSERT( strcmp( version_str, POLARSSL_VERSION_STRING ) == 0 );
Paul Bakker3ac1b2d2010-06-18 22:47:29 +000034}
Paul Bakker33b43f12013-08-20 11:48:36 +020035/* END_CASE */
Paul Bakker3ac1b2d2010-06-18 22:47:29 +000036
Paul Bakker33b43f12013-08-20 11:48:36 +020037/* BEGIN_CASE */
38void check_runtime_version( char *version_str )
Paul Bakker3ac1b2d2010-06-18 22:47:29 +000039{
40 char build_str[100];
41 char get_str[100];
42 char build_str_full[100];
43 char get_str_full[100];
44 unsigned int get_int;
45
46 memset( build_str, 0, 100 );
47 memset( get_str, 0, 100 );
48 memset( build_str_full, 0, 100 );
49 memset( get_str_full, 0, 100 );
50
51 get_int = version_get_number();
52 version_get_string( get_str );
53 version_get_string_full( get_str_full );
54
55 snprintf( build_str, 100, "%d.%d.%d",
56 (get_int >> 24) & 0xFF,
57 (get_int >> 16) & 0xFF,
58 (get_int >> 8) & 0xFF );
Paul Bakker33b43f12013-08-20 11:48:36 +020059 snprintf( build_str_full, 100, "PolarSSL %s", version_str );
Paul Bakker3ac1b2d2010-06-18 22:47:29 +000060
Paul Bakker33b43f12013-08-20 11:48:36 +020061 TEST_ASSERT( strcmp( build_str, version_str ) == 0 );
Paul Bakker3ac1b2d2010-06-18 22:47:29 +000062 TEST_ASSERT( strcmp( build_str_full, get_str_full ) == 0 );
Paul Bakker33b43f12013-08-20 11:48:36 +020063 TEST_ASSERT( strcmp( version_str, get_str ) == 0 );
Paul Bakker3ac1b2d2010-06-18 22:47:29 +000064}
Paul Bakker33b43f12013-08-20 11:48:36 +020065/* END_CASE */
Paul Bakker0f90d7d2014-04-30 11:49:44 +020066
67/* BEGIN_CASE */
68void check_feature( char *feature, int result )
69{
70 int check = version_check_feature( feature );
71 TEST_ASSERT( check == result );
72}
73/* END_CASE */