annotate proxy_cache_age.t @ 1991:a8c4d48a4073

Tests: proxy cache Age header handling tests.
author Maxim Dounin <mdounin@mdounin.ru>
date Thu, 18 Jul 2024 19:40:19 +0300
parents
children d715aff0b61d
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1991
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
1 #!/usr/bin/perl
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
2
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
3 # (C) Maxim Dounin
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
4
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
5 # Tests for proxy cache Age header handling.
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
6
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
7 ###############################################################################
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
8
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
9 use warnings;
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
10 use strict;
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
11
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
12 use Test::More;
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
13
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
14 BEGIN { use FindBin; chdir($FindBin::Bin); }
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
15
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
16 use lib 'lib';
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
17 use Test::Nginx;
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
18
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
19 ###############################################################################
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
20
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
21 select STDERR; $| = 1;
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
22 select STDOUT; $| = 1;
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
23
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
24 my $t = Test::Nginx->new()->has(qw/http proxy cache/)
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
25 ->write_file_expand('nginx.conf', <<'EOF');
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
26
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
27 %%TEST_GLOBALS%%
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
28
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
29 daemon off;
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
30
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
31 events {
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
32 }
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
33
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
34 http {
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
35 %%TEST_GLOBALS_HTTP%%
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
36
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
37 proxy_cache_path %%TESTDIR%%/cache keys_zone=NAME:1m;
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
38 proxy_cache_key $request_uri;
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
39
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
40 server {
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
41 listen 127.0.0.1:8080;
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
42 server_name localhost;
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
43
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
44 add_header X-Cache-Status $upstream_cache_status;
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
45 add_header Age $upstream_cache_age;
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
46
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
47 location / {
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
48 proxy_pass http://127.0.0.1:8081;
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
49 proxy_cache NAME;
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
50 }
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
51
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
52 location /revalidate {
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
53 proxy_pass http://127.0.0.1:8081;
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
54 proxy_cache NAME;
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
55 proxy_cache_revalidate on;
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
56 }
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
57
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
58 location /ignore/ {
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
59 proxy_pass http://127.0.0.1:8081/;
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
60 proxy_cache NAME;
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
61
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
62 proxy_ignore_headers Age;
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
63 }
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
64 }
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
65
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
66 server {
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
67 listen 127.0.0.1:8081;
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
68 server_name localhost;
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
69
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
70 location /fresh {
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
71 add_header Cache-Control max-age=100;
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
72 add_header Age 90;
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
73 }
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
74
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
75 location /stale {
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
76 add_header Cache-Control max-age=100;
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
77 add_header Age 110;
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
78 }
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
79
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
80 location /before {
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
81 add_header Age 110;
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
82 add_header Cache-Control max-age=100;
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
83 }
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
84
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
85 location /noage {
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
86 add_header Cache-Control max-age=100;
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
87 }
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
88
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
89 location /revalidate {
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
90 add_header Cache-Control max-age=1;
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
91 }
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
92 }
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
93 }
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
94
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
95 EOF
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
96
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
97 $t->write_file('fresh', 'SEE-THIS');
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
98 $t->write_file('stale', 'SEE-THIS');
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
99 $t->write_file('before', 'SEE-THIS');
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
100 $t->write_file('noage', 'SEE-THIS');
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
101 $t->write_file('revalidate', 'SEE-THIS');
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
102
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
103 $t->try_run('no age support')->plan(13);
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
104
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
105 ###############################################################################
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
106
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
107 # responses with Age header cached
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
108
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
109 like(get('/fresh'), qr/HIT/, 'fresh cached');
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
110 like(get('/stale'), qr/MISS/, 'stale not cached');
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
111 like(get('/before'), qr/MISS/, 'stale age first not cached');
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
112 like(get('/noage'), qr/HIT/, 'noage cached');
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
113 like(get('/revalidate'), qr/HIT/, 'revalidate cached');
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
114
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
115 # the same with the Age header ignored
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
116
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
117 like(get('/ignore/fresh'), qr/HIT/, 'fresh ignore');
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
118 like(get('/ignore/stale'), qr/HIT/, 'stale ignore');
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
119 like(get('/ignore/before'), qr/HIT/, 'stale age first ignore');
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
120 like(get('/ignore/noage'), qr/HIT/, 'noage ignore');
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
121
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
122 # age header updated on cached responses
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
123
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
124 sleep(2);
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
125
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
126 like(http_get('/fresh'), qr/(?<!Age:.{,200})Age: 9[1-5](?!.*Age:)/ms,
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
127 'cached age updated');
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
128 like(http_get('/stale'), qr/(?<!Age:.{,200})Age: 110(?!.*Age:)/ms,
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
129 'not cached age preserved');
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
130 like(http_get('/noage'), qr/(?<!Age:.{,200})Age: [1-5](?!.*Age:)/ms,
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
131 'noage age added');
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
132
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
133 like(http_get('/revalidate'), qr/REVALIDATED(?!.*Age:)/ms,
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
134 'revalidate age not added');
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
135
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
136 ###############################################################################
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
137
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
138 sub get {
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
139 my ($uri) = @_;
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
140 http_get($uri);
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
141 http_get($uri);
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
142 }
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
143
a8c4d48a4073 Tests: proxy cache Age header handling tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
144 ###############################################################################