xref: /unit/src/test/nxt_msec_diff_test.c (revision 611:323e11065f83)
1384Szelenkov@nginx.com 
2384Szelenkov@nginx.com /*
3384Szelenkov@nginx.com  * Copyright (C) Igor Sysoev
4384Szelenkov@nginx.com  * Copyright (C) NGINX, Inc.
5384Szelenkov@nginx.com  */
6384Szelenkov@nginx.com 
7384Szelenkov@nginx.com #include <nxt_main.h>
8384Szelenkov@nginx.com #include "nxt_tests.h"
9384Szelenkov@nginx.com 
10384Szelenkov@nginx.com 
11384Szelenkov@nginx.com static const nxt_msec_t  pairs[] = {
12384Szelenkov@nginx.com 
13384Szelenkov@nginx.com     0x00000000, 0x00000001,
14*611Svbart@nginx.com     0x00000000, 0x7FFFFFFF,
15384Szelenkov@nginx.com 
16*611Svbart@nginx.com     0x7FFFFFFF, 0x80000000,
17*611Svbart@nginx.com     0x7FFFFFFF, 0x80000001,
18384Szelenkov@nginx.com 
19384Szelenkov@nginx.com     0x80000000, 0x80000001,
20*611Svbart@nginx.com     0x80000000, 0xFFFFFFFF,
21384Szelenkov@nginx.com 
22*611Svbart@nginx.com     0xFFFFFFFF, 0x00000000,
23*611Svbart@nginx.com     0xFFFFFFFF, 0x00000001,
24384Szelenkov@nginx.com };
25384Szelenkov@nginx.com 
26384Szelenkov@nginx.com 
27384Szelenkov@nginx.com nxt_int_t
nxt_msec_diff_test(nxt_thread_t * thr,nxt_msec_less_t less)28384Szelenkov@nginx.com nxt_msec_diff_test(nxt_thread_t *thr, nxt_msec_less_t less)
29384Szelenkov@nginx.com {
30384Szelenkov@nginx.com     nxt_uint_t  i;
31384Szelenkov@nginx.com 
32384Szelenkov@nginx.com     nxt_thread_time_update(thr);
33384Szelenkov@nginx.com 
34384Szelenkov@nginx.com     for (i = 0; i < nxt_nitems(pairs); i += 2) {
35384Szelenkov@nginx.com 
36384Szelenkov@nginx.com         if (!less(pairs[i], pairs[i + 1])) {
37384Szelenkov@nginx.com             nxt_log_alert(thr->log,
38384Szelenkov@nginx.com                           "msec diff test failed: 0x%08XM 0x%08XM",
39384Szelenkov@nginx.com                           pairs[i], pairs[i + 1]);
40384Szelenkov@nginx.com             return NXT_ERROR;
41384Szelenkov@nginx.com         }
42384Szelenkov@nginx.com     }
43384Szelenkov@nginx.com 
44384Szelenkov@nginx.com     nxt_log_error(NXT_LOG_NOTICE, thr->log, "msec diff test passed");
45384Szelenkov@nginx.com     return NXT_OK;
46384Szelenkov@nginx.com }
47