skip to content
==> tests/clock.c <==
1/* Duration's float conversions as Rust computes them, and the virtual clock. */
2#include "mesh/check.h"
3#include "mesh/top_clock.h"
4
5int main(void) {
6    CHECK_F32_BITS(mt_secs_f32(MT_MS(66)), 0x3d872b02u); /* 0.066f */
7    CHECK(mt_secs_f64(MT_SECS(20) + 5) == 20.000000005);
8    CHECK_U(mt_since(5, 9), 0);
9    CHECK_U(mt_since(9, 5), 4);
10    mt_clock_virtual(true, 1000);
11    CHECK_U(mt_now(), 1000);
12    mt_clock_virtual(false, 0);
13    mt_instant a = mt_now(), b = mt_now();
14    CHECK(b >= a);
15    CHECK_U(mt_from_secs_f32(10.0f), MT_SECS(10));
16    return mesh_check_done();
17}