Mercurial > hg > nginx-tests
annotate proxy_redirect.t @ 431:05c46688b54b
Tests: ssl_password_file.t fixes.
Make sure to always specify listen socket in all servers as the
default vary (under root, nginx will try to listen on 80). Make sure
to detect if an https request was processed by http.
author | Maxim Dounin <mdounin@mdounin.ru> |
---|---|
date | Wed, 09 Jul 2014 05:19:51 +0400 |
parents | ba992cfdc606 |
children | e9064d691790 |
rev | line source |
---|---|
186
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
1 #!/usr/bin/perl |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
2 |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
3 # (C) Maxim Dounin |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
4 # (C) Valentin Bartenev |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
5 |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
6 # Tests for the proxy_redirect directive. |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
7 |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
8 ############################################################################### |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
9 |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
10 use warnings; |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
11 use strict; |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
12 |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
13 use Test::More; |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
14 |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
15 BEGIN { use FindBin; chdir($FindBin::Bin); } |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
16 |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
17 use lib 'lib'; |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
18 use Test::Nginx; |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
19 |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
20 ############################################################################### |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
21 |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
22 select STDERR; $| = 1; |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
23 select STDOUT; $| = 1; |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
24 |
196
3f59e6a843bd
Tests: proxy_redirect off inheritance.
Valentin Bartenev <ne@vbart.ru>
parents:
193
diff
changeset
|
25 my $t = Test::Nginx->new()->has(qw/http proxy rewrite/)->plan(15); |
186
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
26 |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
27 $t->write_file_expand('nginx.conf', <<'EOF'); |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
28 |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
29 %%TEST_GLOBALS%% |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
30 |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
31 daemon off; |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
32 |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
33 events { |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
34 } |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
35 |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
36 http { |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
37 %%TEST_GLOBALS_HTTP%% |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
38 |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
39 server { |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
40 listen 127.0.0.1:8080; |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
41 server_name localhost; |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
42 |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
43 location / { |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
44 set $some_var var_here; |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
45 |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
46 proxy_pass http://127.0.0.1:8081; |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
47 |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
48 proxy_redirect http://127.0.0.1:8081/var_in_second/ /$some_var/; |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
49 proxy_redirect http://127.0.0.1:8081/$some_var/ /replaced/; |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
50 |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
51 proxy_redirect ~^(.+)81/regex_w_([^/]+) $180/$2/test.html; |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
52 proxy_redirect ~*re+gexp? /replaced/test.html; |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
53 } |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
54 |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
55 location /expl_default/ { |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
56 proxy_pass http://127.0.0.1:8081/replace_this/; |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
57 proxy_redirect wrong wrong; |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
58 proxy_redirect default; |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
59 } |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
60 |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
61 location /impl_default/ { |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
62 proxy_pass http://127.0.0.1:8081/replace_this/; |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
63 } |
196
3f59e6a843bd
Tests: proxy_redirect off inheritance.
Valentin Bartenev <ne@vbart.ru>
parents:
193
diff
changeset
|
64 |
3f59e6a843bd
Tests: proxy_redirect off inheritance.
Valentin Bartenev <ne@vbart.ru>
parents:
193
diff
changeset
|
65 location /off/ { |
3f59e6a843bd
Tests: proxy_redirect off inheritance.
Valentin Bartenev <ne@vbart.ru>
parents:
193
diff
changeset
|
66 proxy_pass http://127.0.0.1:8081/; |
3f59e6a843bd
Tests: proxy_redirect off inheritance.
Valentin Bartenev <ne@vbart.ru>
parents:
193
diff
changeset
|
67 proxy_redirect off; |
3f59e6a843bd
Tests: proxy_redirect off inheritance.
Valentin Bartenev <ne@vbart.ru>
parents:
193
diff
changeset
|
68 |
3f59e6a843bd
Tests: proxy_redirect off inheritance.
Valentin Bartenev <ne@vbart.ru>
parents:
193
diff
changeset
|
69 location /off/on/ { |
3f59e6a843bd
Tests: proxy_redirect off inheritance.
Valentin Bartenev <ne@vbart.ru>
parents:
193
diff
changeset
|
70 proxy_pass http://127.0.0.1:8081; |
3f59e6a843bd
Tests: proxy_redirect off inheritance.
Valentin Bartenev <ne@vbart.ru>
parents:
193
diff
changeset
|
71 proxy_redirect http://127.0.0.1:8081/off/ /; |
3f59e6a843bd
Tests: proxy_redirect off inheritance.
Valentin Bartenev <ne@vbart.ru>
parents:
193
diff
changeset
|
72 |
3f59e6a843bd
Tests: proxy_redirect off inheritance.
Valentin Bartenev <ne@vbart.ru>
parents:
193
diff
changeset
|
73 location /off/on/on/ { |
3f59e6a843bd
Tests: proxy_redirect off inheritance.
Valentin Bartenev <ne@vbart.ru>
parents:
193
diff
changeset
|
74 proxy_pass http://127.0.0.1:8081; |
3f59e6a843bd
Tests: proxy_redirect off inheritance.
Valentin Bartenev <ne@vbart.ru>
parents:
193
diff
changeset
|
75 } |
3f59e6a843bd
Tests: proxy_redirect off inheritance.
Valentin Bartenev <ne@vbart.ru>
parents:
193
diff
changeset
|
76 } |
3f59e6a843bd
Tests: proxy_redirect off inheritance.
Valentin Bartenev <ne@vbart.ru>
parents:
193
diff
changeset
|
77 } |
186
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
78 } |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
79 |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
80 server { |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
81 listen 127.0.0.1:8081; |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
82 server_name localhost; |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
83 |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
84 location / { |
193
50063559d85a
Tests: proxy_redirect and Refresh header.
Valentin Bartenev <ne@vbart.ru>
parents:
186
diff
changeset
|
85 add_header Refresh "7; url=http://127.0.0.1:8081$uri"; |
186
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
86 return http://127.0.0.1:8081$uri; |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
87 } |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
88 } |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
89 } |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
90 |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
91 EOF |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
92 |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
93 $t->run(); |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
94 |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
95 ############################################################################### |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
96 |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
97 |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
98 is(http_get_location('http://127.0.0.1:8080/impl_default/test.html'), |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
99 'http://127.0.0.1:8080/impl_default/test.html', 'implicit default'); |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
100 is(http_get_location('http://127.0.0.1:8080/expl_default/test.html'), |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
101 'http://127.0.0.1:8080/expl_default/test.html', 'explicit default'); |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
102 |
193
50063559d85a
Tests: proxy_redirect and Refresh header.
Valentin Bartenev <ne@vbart.ru>
parents:
186
diff
changeset
|
103 is(http_get_refresh('http://127.0.0.1:8080/impl_default/test.html'), |
50063559d85a
Tests: proxy_redirect and Refresh header.
Valentin Bartenev <ne@vbart.ru>
parents:
186
diff
changeset
|
104 '7; url=/impl_default/test.html', 'implicit default (refresh)'); |
50063559d85a
Tests: proxy_redirect and Refresh header.
Valentin Bartenev <ne@vbart.ru>
parents:
186
diff
changeset
|
105 is(http_get_refresh('http://127.0.0.1:8080/expl_default/test.html'), |
50063559d85a
Tests: proxy_redirect and Refresh header.
Valentin Bartenev <ne@vbart.ru>
parents:
186
diff
changeset
|
106 '7; url=/expl_default/test.html', 'explicit default (refresh)'); |
50063559d85a
Tests: proxy_redirect and Refresh header.
Valentin Bartenev <ne@vbart.ru>
parents:
186
diff
changeset
|
107 |
186
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
108 is(http_get_location('http://127.0.0.1:8080/var_in_second/test.html'), |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
109 'http://127.0.0.1:8080/var_here/test.html', 'variable in second arg'); |
193
50063559d85a
Tests: proxy_redirect and Refresh header.
Valentin Bartenev <ne@vbart.ru>
parents:
186
diff
changeset
|
110 is(http_get_refresh('http://127.0.0.1:8080/var_in_second/test.html'), |
50063559d85a
Tests: proxy_redirect and Refresh header.
Valentin Bartenev <ne@vbart.ru>
parents:
186
diff
changeset
|
111 '7; url=/var_here/test.html', 'variable in second arg (refresh)'); |
186
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
112 |
196
3f59e6a843bd
Tests: proxy_redirect off inheritance.
Valentin Bartenev <ne@vbart.ru>
parents:
193
diff
changeset
|
113 is(http_get_location('http://127.0.0.1:8080/off/test.html'), |
3f59e6a843bd
Tests: proxy_redirect off inheritance.
Valentin Bartenev <ne@vbart.ru>
parents:
193
diff
changeset
|
114 'http://127.0.0.1:8081/test.html', 'rewrite off'); |
3f59e6a843bd
Tests: proxy_redirect off inheritance.
Valentin Bartenev <ne@vbart.ru>
parents:
193
diff
changeset
|
115 is(http_get_location('http://127.0.0.1:8080/off/on/test.html'), |
3f59e6a843bd
Tests: proxy_redirect off inheritance.
Valentin Bartenev <ne@vbart.ru>
parents:
193
diff
changeset
|
116 'http://127.0.0.1:8080/on/test.html', 'rewrite off overwrite'); |
3f59e6a843bd
Tests: proxy_redirect off inheritance.
Valentin Bartenev <ne@vbart.ru>
parents:
193
diff
changeset
|
117 |
3f59e6a843bd
Tests: proxy_redirect off inheritance.
Valentin Bartenev <ne@vbart.ru>
parents:
193
diff
changeset
|
118 is(http_get_location('http://127.0.0.1:8080/off/on/on/test.html'), |
3f59e6a843bd
Tests: proxy_redirect off inheritance.
Valentin Bartenev <ne@vbart.ru>
parents:
193
diff
changeset
|
119 'http://127.0.0.1:8080/on/on/test.html', 'rewrite inheritance'); |
3f59e6a843bd
Tests: proxy_redirect off inheritance.
Valentin Bartenev <ne@vbart.ru>
parents:
193
diff
changeset
|
120 |
186
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
121 is(http_get_location('http://127.0.0.1:8080/var_here/test.html'), |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
122 'http://127.0.0.1:8080/replaced/test.html', 'variable in first arg'); |
193
50063559d85a
Tests: proxy_redirect and Refresh header.
Valentin Bartenev <ne@vbart.ru>
parents:
186
diff
changeset
|
123 is(http_get_refresh('http://127.0.0.1:8080/var_here/test.html'), |
50063559d85a
Tests: proxy_redirect and Refresh header.
Valentin Bartenev <ne@vbart.ru>
parents:
186
diff
changeset
|
124 '7; url=/replaced/test.html', 'variable in first arg (refresh)'); |
186
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
125 |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
126 is(http_get_location('http://127.0.0.1:8080/ReeegEX/test.html'), |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
127 'http://127.0.0.1:8080/replaced/test.html', 'caseless regexp'); |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
128 is(http_get_location('http://127.0.0.1:8080/regex_w_captures/test.html'), |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
129 'http://127.0.0.1:8080/captures/test.html', 'regexp w/captures'); |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
130 |
193
50063559d85a
Tests: proxy_redirect and Refresh header.
Valentin Bartenev <ne@vbart.ru>
parents:
186
diff
changeset
|
131 is(http_get_refresh('http://127.0.0.1:8080/ReeegEX/test.html'), |
50063559d85a
Tests: proxy_redirect and Refresh header.
Valentin Bartenev <ne@vbart.ru>
parents:
186
diff
changeset
|
132 '7; url=/replaced/test.html', 'caseless regexp (refresh)'); |
50063559d85a
Tests: proxy_redirect and Refresh header.
Valentin Bartenev <ne@vbart.ru>
parents:
186
diff
changeset
|
133 is(http_get_refresh('http://127.0.0.1:8080/regex_w_captures/test.html'), |
50063559d85a
Tests: proxy_redirect and Refresh header.
Valentin Bartenev <ne@vbart.ru>
parents:
186
diff
changeset
|
134 '7; url=http://127.0.0.1:8080/captures/test.html', |
50063559d85a
Tests: proxy_redirect and Refresh header.
Valentin Bartenev <ne@vbart.ru>
parents:
186
diff
changeset
|
135 'regexp w/captures (refresh)'); |
50063559d85a
Tests: proxy_redirect and Refresh header.
Valentin Bartenev <ne@vbart.ru>
parents:
186
diff
changeset
|
136 |
186
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
137 ############################################################################### |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
138 |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
139 sub http_get_location { |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
140 my ($url) = @_; |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
141 http_get($url) =~ /^Location:\s(.+?)\x0d?$/mi; |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
142 return $1; |
1613a63b5100
Tests: added proxy_redirect tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
143 } |
193
50063559d85a
Tests: proxy_redirect and Refresh header.
Valentin Bartenev <ne@vbart.ru>
parents:
186
diff
changeset
|
144 |
50063559d85a
Tests: proxy_redirect and Refresh header.
Valentin Bartenev <ne@vbart.ru>
parents:
186
diff
changeset
|
145 sub http_get_refresh { |
50063559d85a
Tests: proxy_redirect and Refresh header.
Valentin Bartenev <ne@vbart.ru>
parents:
186
diff
changeset
|
146 my ($url) = @_; |
50063559d85a
Tests: proxy_redirect and Refresh header.
Valentin Bartenev <ne@vbart.ru>
parents:
186
diff
changeset
|
147 http_get($url) =~ /^Refresh:\s(.+?)\x0d?$/mi; |
50063559d85a
Tests: proxy_redirect and Refresh header.
Valentin Bartenev <ne@vbart.ru>
parents:
186
diff
changeset
|
148 return $1; |
50063559d85a
Tests: proxy_redirect and Refresh header.
Valentin Bartenev <ne@vbart.ru>
parents:
186
diff
changeset
|
149 } |