1*384Szelenkov@nginx.com 
2*384Szelenkov@nginx.com /*
3*384Szelenkov@nginx.com  * Copyright (C) Igor Sysoev
4*384Szelenkov@nginx.com  * Copyright (C) NGINX, Inc.
5*384Szelenkov@nginx.com  */
6*384Szelenkov@nginx.com 
7*384Szelenkov@nginx.com #include <nxt_main.h>
8*384Szelenkov@nginx.com #include "nxt_tests.h"
9*384Szelenkov@nginx.com 
10*384Szelenkov@nginx.com 
11*384Szelenkov@nginx.com static const nxt_msec_t  pairs[] = {
12*384Szelenkov@nginx.com 
13*384Szelenkov@nginx.com     0x00000000, 0x00000001,
14*384Szelenkov@nginx.com     0x00000000, 0x7fffffff,
15*384Szelenkov@nginx.com 
16*384Szelenkov@nginx.com     0x7fffffff, 0x80000000,
17*384Szelenkov@nginx.com     0x7fffffff, 0x80000001,
18*384Szelenkov@nginx.com 
19*384Szelenkov@nginx.com     0x80000000, 0x80000001,
20*384Szelenkov@nginx.com     0x80000000, 0xffffffff,
21*384Szelenkov@nginx.com 
22*384Szelenkov@nginx.com     0xffffffff, 0x00000000,
23*384Szelenkov@nginx.com     0xffffffff, 0x00000001,
24*384Szelenkov@nginx.com };
25*384Szelenkov@nginx.com 
26*384Szelenkov@nginx.com 
27*384Szelenkov@nginx.com nxt_int_t
28*384Szelenkov@nginx.com nxt_msec_diff_test(nxt_thread_t *thr, nxt_msec_less_t less)
29*384Szelenkov@nginx.com {
30*384Szelenkov@nginx.com     nxt_uint_t  i;
31*384Szelenkov@nginx.com 
32*384Szelenkov@nginx.com     nxt_thread_time_update(thr);
33*384Szelenkov@nginx.com 
34*384Szelenkov@nginx.com     for (i = 0; i < nxt_nitems(pairs); i += 2) {
35*384Szelenkov@nginx.com 
36*384Szelenkov@nginx.com         if (!less(pairs[i], pairs[i + 1])) {
37*384Szelenkov@nginx.com             nxt_log_alert(thr->log,
38*384Szelenkov@nginx.com                           "msec diff test failed: 0x%08XM 0x%08XM",
39*384Szelenkov@nginx.com                           pairs[i], pairs[i + 1]);
40*384Szelenkov@nginx.com             return NXT_ERROR;
41*384Szelenkov@nginx.com         }
42*384Szelenkov@nginx.com     }
43*384Szelenkov@nginx.com 
44*384Szelenkov@nginx.com     nxt_log_error(NXT_LOG_NOTICE, thr->log, "msec diff test passed");
45*384Szelenkov@nginx.com     return NXT_OK;
46*384Szelenkov@nginx.com }
47