Lib unit tests have been renamed to tests.
This commit is contained in:
60
test/nxt_term_parse_test.c
Normal file
60
test/nxt_term_parse_test.c
Normal file
@@ -0,0 +1,60 @@
|
||||
|
||||
/*
|
||||
* Copyright (C) Igor Sysoev
|
||||
* Copyright (C) NGINX, Inc.
|
||||
*/
|
||||
|
||||
#include <nxt_main.h>
|
||||
#include "nxt_tests.h"
|
||||
|
||||
|
||||
typedef struct {
|
||||
nxt_str_t string;
|
||||
nxt_bool_t is_sec;
|
||||
nxt_int_t value;
|
||||
} nxt_term_parse_test_t;
|
||||
|
||||
|
||||
static const nxt_term_parse_test_t terms[] = {
|
||||
{ nxt_string("1y"), 1, 365 * 24 * 60 * 60 },
|
||||
{ nxt_string("1w"), 1, 7 * 24 * 60 * 60 },
|
||||
{ nxt_string("1w"), 0, 7 * 24 * 60 * 60 * 1000 },
|
||||
{ nxt_string("1w 1d"), 0, 8 * 24 * 60 * 60 * 1000 },
|
||||
{ nxt_string("1w d"), 0, -1 },
|
||||
{ nxt_string("w"), 0, -1 },
|
||||
{ nxt_string("1d 1w"), 0, -1 },
|
||||
{ nxt_string("25d"), 0, -2 },
|
||||
{ nxt_string("300"), 1, 300 },
|
||||
{ nxt_string("300"), 0, 300000 },
|
||||
{ nxt_string("300s"), 1, 300 },
|
||||
{ nxt_string("300ms"), 0, 300 },
|
||||
{ nxt_string("1y 1M 1w1d1h1m1s"), 1,
|
||||
(((((365 + 30 + 7 + 1) * 24 + 1) * 60) + 1) * 60) + 1 },
|
||||
};
|
||||
|
||||
|
||||
nxt_int_t
|
||||
nxt_term_parse_test(nxt_thread_t *thr)
|
||||
{
|
||||
nxt_int_t val;
|
||||
nxt_uint_t i;
|
||||
const nxt_str_t *s;
|
||||
|
||||
nxt_thread_time_update(thr);
|
||||
|
||||
for (i = 0; i < nxt_nitems(terms); i++) {
|
||||
|
||||
s = &terms[i].string;
|
||||
val = nxt_term_parse(s->start, s->length, terms[i].is_sec);
|
||||
|
||||
if (val != terms[i].value) {
|
||||
nxt_log_alert(thr->log,
|
||||
"term parse test failed: \"%V\": %i %i",
|
||||
s, terms[i].value, val);
|
||||
return NXT_ERROR;
|
||||
}
|
||||
}
|
||||
|
||||
nxt_log_error(NXT_LOG_NOTICE, thr->log, "term parse test passed");
|
||||
return NXT_OK;
|
||||
}
|
||||
Reference in New Issue
Block a user