changeset 1615:4eb2a82dd9b5

Tests: added njs version check for js ngx tests.
author Dmitry Volyntsev <xeioex@nginx.com>
date Wed, 18 Nov 2020 11:14:56 +0000
parents bc0990ea2e5b
children cd0461e1e392
files js_ngx.t stream_js_ngx.t
diffstat 2 files changed, 41 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/js_ngx.t
+++ b/js_ngx.t
@@ -41,6 +41,10 @@ http {
         listen       127.0.0.1:8080;
         server_name  localhost;
 
+        location /njs {
+            js_content test.njs;
+        }
+
         location /log {
             js_content test.log;
         }
@@ -50,6 +54,10 @@ http {
 EOF
 
 $t->write_file('test.js', <<EOF);
+    function test_njs(r) {
+        r.return(200, njs.version);
+    }
+
     function level(r) {
         switch (r.args.level) {
         case 'INFO': return ngx.INFO;
@@ -65,7 +73,7 @@ EOF
         r.return(200);
     }
 
-    export default {log};
+    export default {njs: test_njs, log};
 
 EOF
 
@@ -73,6 +81,10 @@ EOF
 
 ###############################################################################
 
+TODO: {
+local $TODO = 'not yet'
+	unless http_get('/njs') =~ /^([.0-9]+)$/m && $1 ge '0.5.0';
+
 http_get('/log?level=INFO&text=FOO');
 http_get('/log?level=WARN&text=BAR');
 http_get('/log?level=ERR&text=BAZ');
@@ -83,4 +95,6 @@ like($t->read_file('error.log'), qr/\[in
 like($t->read_file('error.log'), qr/\[warn\].*ngx.log:BAR/, 'ngx.log warn');
 like($t->read_file('error.log'), qr/\[error\].*ngx.log:BAZ/, 'ngx.log err');
 
+}
+
 ###############################################################################
--- a/stream_js_ngx.t
+++ b/stream_js_ngx.t
@@ -33,6 +33,21 @@ daemon off;
 events {
 }
 
+http {
+    %%TEST_GLOBALS_HTTP%%
+
+    js_import test.js;
+
+    server {
+        listen       127.0.0.1:8080;
+        server_name  localhost;
+
+        location /njs {
+            js_content test.njs;
+        }
+    }
+}
+
 stream {
     js_import test.js;
 
@@ -47,6 +62,10 @@ stream {
 EOF
 
 $t->write_file('test.js', <<EOF);
+    function test_njs(r) {
+        r.return(200, njs.version);
+    }
+
     function log(s) {
         ngx.log(ngx.INFO, `ngx.log:FOO`);
         ngx.log(ngx.WARN, `ngx.log:BAR`);
@@ -54,7 +73,7 @@ EOF
         return 'OK';
     }
 
-    export default {log};
+    export default {njs: test_njs, log};
 
 EOF
 
@@ -62,6 +81,10 @@ EOF
 
 ###############################################################################
 
+TODO: {
+local $TODO = 'not yet'
+	unless http_get('/njs') =~ /^([.0-9]+)$/m && $1 ge '0.5.0';
+
 is(stream('127.0.0.1:' . port(8081))->read(), 'OK', 'log var');
 
 $t->stop();
@@ -70,4 +93,6 @@ like($t->read_file('error.log'), qr/\[in
 like($t->read_file('error.log'), qr/\[warn\].*ngx.log:BAR/, 'ngx.log warn');
 like($t->read_file('error.log'), qr/\[error\].*ngx.log:BAZ/, 'ngx.log err');
 
+}
+
 ###############################################################################