Dmitry Volyntsev
April 22, 2019 09:30AM
details: https://hg.nginx.org/njs/rev/4883fe429836
branches:
changeset: 914:4883fe429836
user: hongzhidao <hongzhidao@gmail.com>
date: Sun Apr 21 17:33:31 2019 +0800
description:
Added option to run unit tests in module mode.

diffstat:

njs/test/njs_unit_test.c | 30 ++++++++++++++++--------------
1 files changed, 16 insertions(+), 14 deletions(-)

diffs (107 lines):

diff -r 8f87e3ef4a4d -r 4883fe429836 njs/test/njs_unit_test.c
--- a/njs/test/njs_unit_test.c Fri Apr 19 17:24:29 2019 +0300
+++ b/njs/test/njs_unit_test.c Sun Apr 21 17:33:31 2019 +0800
@@ -12746,8 +12746,8 @@ njs_externals_init(njs_vm_t *vm)


static nxt_int_t
-njs_unit_test(njs_unit_test_t tests[], size_t num, nxt_bool_t disassemble,
- nxt_bool_t verbose)
+njs_unit_test(njs_unit_test_t tests[], size_t num, nxt_bool_t module,
+ nxt_bool_t disassemble, nxt_bool_t verbose)
{
u_char *start;
njs_vm_t *vm, *nvm;
@@ -12765,11 +12765,13 @@ njs_unit_test(njs_unit_test_t tests[], s
for (i = 0; i < num; i++) {

if (verbose) {
- nxt_printf("\"%V\"\n", &njs_test[i].script);
+ nxt_printf("\"%V\"\n", &tests[i].script);
}

nxt_memzero(&options, sizeof(njs_vm_opt_t));

+ options.module = module;
+
vm = njs_vm_create(&options);
if (vm == NULL) {
nxt_printf("njs_vm_create() failed\n");
@@ -12781,9 +12783,9 @@ njs_unit_test(njs_unit_test_t tests[], s
goto done;
}

- start = njs_test[i].script.start;
-
- ret = njs_vm_compile(vm, &start, start + njs_test[i].script.length);
+ start = tests[i].script.start;
+
+ ret = njs_vm_compile(vm, &start, start + tests[i].script.length);

if (ret == NXT_OK) {
if (disassemble) {
@@ -12810,7 +12812,7 @@ njs_unit_test(njs_unit_test_t tests[], s
}
}

- success = nxt_strstr_eq(&njs_test[i].ret, &s);
+ success = nxt_strstr_eq(&tests[i].ret, &s);

if (success) {
if (nvm != NULL) {
@@ -12825,7 +12827,7 @@ njs_unit_test(njs_unit_test_t tests[], s
}

nxt_printf("njs(\"%V\")\nexpected: \"%V\"\n got: \"%V\"\n",
- &njs_test[i].script, &njs_test[i].ret, &s);
+ &tests[i].script, &tests[i].ret, &s);

goto done;
}
@@ -12868,8 +12870,8 @@ njs_timezone_optional_test(nxt_bool_t di
size = strftime((char *) buf, sizeof(buf), "%z", &tm);

if (memcmp(buf, "+1245", size) == 0) {
- ret = njs_unit_test(njs_tz_test, nxt_nitems(njs_tz_test), disassemble,
- verbose);
+ ret = njs_unit_test(njs_tz_test, nxt_nitems(njs_tz_test), 0,
+ disassemble, verbose);
if (ret != NXT_OK) {
return ret;
}
@@ -12883,6 +12885,7 @@ njs_timezone_optional_test(nxt_bool_t di
return NXT_OK;
}

+
static nxt_int_t
njs_regexp_optional_test(nxt_bool_t disassemble, nxt_bool_t verbose)
{
@@ -12909,7 +12912,7 @@ njs_regexp_optional_test(nxt_bool_t disa
&errstr, &erroff, NULL);

if (re1 == NULL && re2 != NULL) {
- ret = njs_unit_test(njs_regexp_test, nxt_nitems(njs_regexp_test),
+ ret = njs_unit_test(njs_regexp_test, nxt_nitems(njs_regexp_test), 0,
disassemble, verbose);
if (ret != NXT_OK) {
return ret;
@@ -13056,8 +13059,6 @@ done:
}


-
-
static nxt_int_t
njs_vm_object_alloc_test(njs_vm_t * vm, nxt_bool_t disassemble,
nxt_bool_t verbose)
@@ -13269,7 +13270,8 @@ main(int argc, char **argv)
(void) putenv((char *) "TZ=UTC");
tzset();

- ret = njs_unit_test(njs_test, nxt_nitems(njs_test), disassemble, verbose);
+ ret = njs_unit_test(njs_test, nxt_nitems(njs_test), 0,
+ disassemble, verbose);
if (ret != NXT_OK) {
return ret;
}
_______________________________________________
nginx-devel mailing list
nginx-devel@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-devel
Subject Author Views Posted

[njs] Added option to run unit tests in module mode.

Dmitry Volyntsev 374 April 22, 2019 09:30AM



Sorry, you do not have permission to post/reply in this forum.

Online Users

Guests: 236
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready