| #line 2 "suites/main_test.function" |
| /* |
| * *** THIS FILE HAS BEEN MACHINE GENERATED *** |
| * |
| * This file has been machine generated using the script: |
| * {generator_script} |
| * |
| * Test file : {test_file} |
| * |
| * The following files were used to create this file. |
| * |
| * Main code file : {test_main_file} |
| * Platform code file : {test_platform_file} |
| * Helper file : {test_common_helper_file} |
| * Test suite file : {test_case_file} |
| * Test suite data : {test_case_data_file} |
| * |
| * |
| * This file is part of mbed TLS (https://tls.mbed.org) |
| */ |
| |
| #if !defined(MBEDTLS_CONFIG_FILE) |
| #include <mbedtls/config.h> |
| #else |
| #include MBEDTLS_CONFIG_FILE |
| #endif |
| |
| |
| /*----------------------------------------------------------------------------*/ |
| /* Common helper code */ |
| |
| {test_common_helpers} |
| |
| #line {line_no} "suites/main_test.function" |
| |
| |
| /*----------------------------------------------------------------------------*/ |
| /* Test Suite Code */ |
| |
| |
| #define TEST_SUITE_ACTIVE |
| |
| {functions_code} |
| |
| #line {line_no} "suites/main_test.function" |
| |
| |
| /*----------------------------------------------------------------------------*/ |
| /* Test dispatch code */ |
| |
| |
| /** |
| * \brief Evaluates an expression/macro into its literal integer value. |
| * For optimizing space for embedded targets each expression/macro |
| * is identified by a unique identifier instead of string literals. |
| * Identifiers and evaluation code is generated by script: |
| * {generator_script} |
| * |
| * \param exp_id Expression identifier. |
| * \param out_value Pointer to int to hold the integer. |
| * |
| * \return 0 if exp_id is found. 1 otherwise. |
| */ |
| int get_expression( int32_t exp_id, int32_t * out_value ) |
| {{ |
| int ret = KEY_VALUE_MAPPING_FOUND; |
| |
| (void) exp_id; |
| (void) out_value; |
| |
| switch( exp_id ) |
| {{ |
| {expression_code} |
| #line {line_no} "suites/main_test.function" |
| default: |
| {{ |
| ret = KEY_VALUE_MAPPING_NOT_FOUND; |
| }} |
| break; |
| }} |
| return( ret ); |
| }} |
| |
| |
| /** |
| * \brief Checks if the dependency i.e. the compile flag is set. |
| * For optimizing space for embedded targets each dependency |
| * is identified by a unique identifier instead of string literals. |
| * Identifiers and check code is generated by script: |
| * {generator_script} |
| * |
| * \param exp_id Dependency identifier. |
| * |
| * \return DEPENDENCY_SUPPORTED if set else DEPENDENCY_NOT_SUPPORTED |
| */ |
| int dep_check( int dep_id ) |
| {{ |
| int ret = DEPENDENCY_NOT_SUPPORTED; |
| |
| (void) dep_id; |
| |
| switch( dep_id ) |
| {{ |
| {dep_check_code} |
| #line {line_no} "suites/main_test.function" |
| default: |
| break; |
| }} |
| return( ret ); |
| }} |
| |
| |
| /** |
| * \brief Function pointer type for test function wrappers. |
| * |
| * |
| * \param void ** Pointer to void pointers. Represents an array of test |
| * function parameters. |
| * |
| * \return void |
| */ |
| typedef void (*TestWrapper_t)( void ** ); |
| |
| |
| /** |
| * \brief Table of test function wrappers. Used by dispatch_test(). |
| * This table is populated by script: |
| * {generator_script} |
| * |
| */ |
| TestWrapper_t test_funcs[] = |
| {{ |
| {dispatch_code} |
| #line {line_no} "suites/main_test.function" |
| }}; |
| |
| |
| /** |
| * \brief Dispatches test functions based on function index. |
| * |
| * \param exp_id Test function index. |
| * |
| * \return DISPATCH_TEST_SUCCESS if found |
| * DISPATCH_TEST_FN_NOT_FOUND if not found |
| * DISPATCH_UNSUPPORTED_SUITE if not compile time enabled. |
| */ |
| int dispatch_test( int func_idx, void ** params ) |
| {{ |
| int ret = DISPATCH_TEST_SUCCESS; |
| TestWrapper_t fp = NULL; |
| |
| if ( func_idx < (int)( sizeof(test_funcs)/sizeof( TestWrapper_t ) ) ) |
| {{ |
| fp = test_funcs[func_idx]; |
| if ( fp ) |
| fp( params ); |
| else |
| ret = ( DISPATCH_UNSUPPORTED_SUITE ); |
| }} |
| else |
| {{ |
| ret = ( DISPATCH_TEST_FN_NOT_FOUND ); |
| }} |
| |
| return( ret ); |
| }} |
| |
| |
| /** |
| * \brief Checks if test function is supported |
| * |
| * \param exp_id Test function index. |
| * |
| * \return DISPATCH_TEST_SUCCESS if found |
| * DISPATCH_TEST_FN_NOT_FOUND if not found |
| * DISPATCH_UNSUPPORTED_SUITE if not compile time enabled. |
| */ |
| int check_test( int func_idx ) |
| {{ |
| int ret = DISPATCH_TEST_SUCCESS; |
| TestWrapper_t fp = NULL; |
| |
| if ( func_idx < (int)( sizeof(test_funcs)/sizeof( TestWrapper_t ) ) ) |
| {{ |
| fp = test_funcs[func_idx]; |
| if ( fp == NULL ) |
| ret = ( DISPATCH_UNSUPPORTED_SUITE ); |
| }} |
| else |
| {{ |
| ret = ( DISPATCH_TEST_FN_NOT_FOUND ); |
| }} |
| |
| return( ret ); |
| }} |
| |
| |
| {platform_code} |
| |
| #line {line_no} "suites/main_test.function" |
| |
| /*----------------------------------------------------------------------------*/ |
| /* Main Test code */ |
| |
| |
| /** |
| * \brief Program main. Invokes platform specific execute_tests(). |
| * |
| * \param argc Command line arguments count. |
| * \param argv Array of command line arguments. |
| * |
| * \return Exit code. |
| */ |
| int main( int argc, const char *argv[] ) |
| {{ |
| int ret = platform_setup(); |
| if( ret != 0 ) |
| {{ |
| mbedtls_fprintf( stderr, |
| "FATAL: Failed to initialize platform - error %d\n", |
| ret ); |
| return( -1 ); |
| }} |
| ret = execute_tests( argc, argv ); |
| platform_teardown(); |
| return( ret ); |
| }} |
| |