| 123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- /* BEGIN_HEADER */
- /* This test module exercises the timing module. Since, depending on the
- * underlying operating system, the timing routines are not always reliable,
- * this suite only performs very basic sanity checks of the timing API.
- */
- #include <limits.h>
- #include "mbedtls/timing.h"
- /* END_HEADER */
- /* BEGIN_DEPENDENCIES
- * depends_on:MBEDTLS_TIMING_C
- * END_DEPENDENCIES
- */
- /* BEGIN_CASE */
- void timing_get_timer()
- {
- struct mbedtls_timing_hr_time time;
- (void) mbedtls_timing_get_timer(&time, 1);
- (void) mbedtls_timing_get_timer(&time, 0);
- /* This goto is added to avoid warnings from the generated code. */
- goto exit;
- }
- /* END_CASE */
- /* BEGIN_CASE */
- void timing_delay(int fin_ms)
- {
- mbedtls_timing_delay_context ctx;
- int result;
- if (fin_ms == 0) {
- mbedtls_timing_set_delay(&ctx, 0, 0);
- result = mbedtls_timing_get_delay(&ctx);
- TEST_ASSERT(result == -1);
- } else {
- mbedtls_timing_set_delay(&ctx, fin_ms / 2, fin_ms);
- result = mbedtls_timing_get_delay(&ctx);
- TEST_ASSERT(result >= 0 && result <= 2);
- }
- }
- /* END_CASE */
|