1# vi:filetype= 2 3use lib 'lib'; 4use Test::Nginx::Socket; 5 6#repeat_each(10); 7no_shuffle(); 8 9repeat_each(2); 10 11plan tests => repeat_each() * (4 * blocks()); 12 13run_tests(); 14 15__DATA__ 16 17=== TEST 1: used 18--- http_config eval: $::http_config 19--- config 20 location = /t { 21 echo ok; 22 rds_csv on; 23 } 24--- request 25GET /t 26--- stap 27F(ngx_http_rds_csv_header_filter) { 28 println("rds csv header filter") 29} 30 31F(ngx_http_rds_csv_body_filter) { 32 println("rds csv body filter") 33} 34 35--- stap_out 36rds csv header filter 37rds csv body filter 38rds csv body filter 39 40--- response_body 41ok 42--- no_error_log 43[error] 44 45 46 47=== TEST 2: unused 48--- http_config eval: $::http_config 49--- config 50 location = /t { 51 echo ok; 52 #rds_csv on; 53 } 54--- request 55GET /t 56--- stap 57F(ngx_http_rds_csv_header_filter) { 58 println("rds csv header filter") 59} 60 61F(ngx_http_rds_csv_body_filter) { 62 println("rds csv body filter") 63} 64 65--- stap_out 66--- response_body 67ok 68--- no_error_log 69[error] 70 71 72 73=== TEST 3: used (multi http {} blocks) 74This test case won't run with nginx 1.9.3+ since duplicate http {} blocks 75have been prohibited since then. 76--- SKIP 77--- http_config eval: $::http_config 78--- config 79 location = /t { 80 echo ok; 81 rds_csv on; 82 } 83 84--- post_main_config 85 http { 86 } 87 88--- request 89GET /t 90--- stap 91F(ngx_http_rds_csv_header_filter) { 92 println("rds csv header filter") 93} 94 95F(ngx_http_rds_csv_body_filter) { 96 println("rds csv body filter") 97} 98 99--- stap_out 100rds csv header filter 101rds csv body filter 102rds csv body filter 103 104--- response_body 105ok 106--- no_error_log 107[error] 108 109