changeset 1473:ddbde6c5b0cd

Tests: stream limit rate tests, variables support.
author Sergey Kandaurov <pluknet@nginx.com>
date Thu, 25 Apr 2019 13:41:45 +0300
parents 7ae2747ee593
children f026c41335b2
files stream_limit_rate2.t
diffstat 1 files changed, 25 insertions(+), 11 deletions(-) [+]
line wrap: on
line diff
copy from stream_limit_rate.t
copy to stream_limit_rate2.t
--- a/stream_limit_rate.t
+++ b/stream_limit_rate2.t
@@ -3,7 +3,7 @@
 # (C) Andrey Zelenkov
 # (C) Nginx, Inc.
 
-# Tests for stream proxy module, limit rate directives.
+# Tests for stream proxy module, limit rate directives, variables support.
 
 ###############################################################################
 
@@ -25,7 +25,7 @@ use Test::Nginx::Stream qw/ stream /;
 select STDERR; $| = 1;
 select STDOUT; $| = 1;
 
-my $t = Test::Nginx->new()->has(qw/stream/)->plan(9)
+my $t = Test::Nginx->new()->has(qw/stream stream_map/)
 	->write_file_expand('nginx.conf', <<'EOF');
 
 %%TEST_GLOBALS%%
@@ -42,8 +42,22 @@ stream {
     # proxy_download_rate value comes from following calculations:
     # test string length (1000) + whitespace (1) + time string length (10)
 
-    proxy_download_rate      1011;
-    proxy_upload_rate        1000;
+    map $server_port $down {
+        default        1011;
+        %%PORT_8082%%  0;
+        %%PORT_8083%%  1;
+        %%PORT_8085%%  250;
+    }
+
+    map $server_port $up {
+        default        1000;
+        %%PORT_8082%%  0;
+        %%PORT_8084%%  1;
+        %%PORT_8086%%  250;
+    }
+
+    proxy_download_rate      $down;
+    proxy_upload_rate        $up;
 
     server {
         listen               127.0.0.1:8081;
@@ -53,32 +67,32 @@ stream {
     server {
         listen               127.0.0.1:8082;
         proxy_pass           127.0.0.1:8080;
-        proxy_download_rate  0;
-        proxy_upload_rate    0;
+        proxy_download_rate  $down;
+        proxy_upload_rate    $up;
     }
 
     server {
         listen               127.0.0.1:8083;
         proxy_pass           127.0.0.1:8080;
-        proxy_download_rate  1;
+        proxy_download_rate  $down;
     }
 
     server {
         listen               127.0.0.1:8084;
         proxy_pass           127.0.0.1:8080;
-        proxy_upload_rate    1;
+        proxy_upload_rate    $up;
     }
 
     server {
         listen               127.0.0.1:8085;
         proxy_pass           127.0.0.1:8080;
-        proxy_download_rate  250;
+        proxy_download_rate  $down;
     }
 
     server {
         listen               127.0.0.1:8086;
         proxy_pass           127.0.0.1:8087;
-        proxy_upload_rate    250;
+        proxy_upload_rate    $up;
     }
 }
 
@@ -86,7 +100,7 @@ EOF
 
 $t->run_daemon(\&stream_daemon, port(8080));
 $t->run_daemon(\&stream_daemon, port(8087));
-$t->run();
+$t->try_run('no proxy_download_rate variables')->plan(9);
 
 $t->waitforsocket('127.0.0.1:' . port(8080));
 $t->waitforsocket('127.0.0.1:' . port(8087));