Mercurial > hg > nginx-tests
annotate upstream.t @ 289:cbd4f6eca676
Tests: check if started process is alive while starting nginx.
This allows faster test execution in case of startup failures, e.g.
due to configuration errors. Note that just adding waitpid() to
waitforfile() causes hang on win32 in wait(). To fix this, wait()
calls were changed to waitpid() with pid specified.
author | Maxim Dounin <mdounin@mdounin.ru> |
---|---|
date | Mon, 27 May 2013 17:15:17 +0400 |
parents | ba5b92378653 |
children | 719285b89d7e |
rev | line source |
---|---|
287
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
1 #!/usr/bin/perl |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
2 |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
3 # (C) Maxim Dounin |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
4 |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
5 # Tests for upstream module and balancers. |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
6 |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
7 ############################################################################### |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
8 |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
9 use warnings; |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
10 use strict; |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
11 |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
12 use Test::More; |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
13 |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
14 BEGIN { use FindBin; chdir($FindBin::Bin); } |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
15 |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
16 use lib 'lib'; |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
17 use Test::Nginx; |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
18 |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
19 ############################################################################### |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
20 |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
21 select STDERR; $| = 1; |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
22 select STDOUT; $| = 1; |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
23 |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
24 my $t = Test::Nginx->new()->has(qw/http proxy/)->plan(3); |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
25 |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
26 $t->write_file_expand('nginx.conf', <<'EOF'); |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
27 |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
28 %%TEST_GLOBALS%% |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
29 |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
30 daemon off; |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
31 |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
32 events { |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
33 } |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
34 |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
35 http { |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
36 %%TEST_GLOBALS_HTTP%% |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
37 |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
38 upstream u { |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
39 server 127.0.0.1:8081 max_fails=3 fail_timeout=10s; |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
40 server 127.0.0.1:8082 max_fails=3 fail_timeout=10s; |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
41 } |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
42 |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
43 upstream u2 { |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
44 server 127.0.0.1:8081 max_fails=3 fail_timeout=10s; |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
45 server 127.0.0.1:8082 max_fails=3 fail_timeout=10s; |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
46 } |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
47 |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
48 server { |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
49 listen 127.0.0.1:8080; |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
50 server_name localhost; |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
51 |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
52 location / { |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
53 proxy_pass http://u; |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
54 } |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
55 location /close2 { |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
56 proxy_pass http://u2; |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
57 } |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
58 } |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
59 } |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
60 |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
61 EOF |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
62 |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
63 $t->run_daemon(\&http_daemon, 8081); |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
64 $t->run_daemon(\&http_daemon, 8082); |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
65 $t->run(); |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
66 |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
67 ############################################################################### |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
68 |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
69 is(many('/', 30), '8081: 15, 8082: 15', 'balanced'); |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
70 |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
71 # from 9 first requests to 8081, only 6 will be successfull, |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
72 # 3rd, 6th, and 9th requests will fail; after this the backend |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
73 # will be considered down and won't be used till fail_timeout passes |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
74 |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
75 is(many('/close', 30), '8081: 6, 8082: 24', 'failures'); |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
76 |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
77 SKIP: { |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
78 local $TODO = 'broken in 1.3.0'; |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
79 |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
80 skip 'long test', 1 unless $ENV{TEST_NGINX_UNSAFE}; |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
81 |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
82 # bug: failures counter is reset if first request in a second succeeds |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
83 # |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
84 # delay added to make sure first 9 requests will take more than 1s; |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
85 # note that the test is racy and may unexpectedly succeed |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
86 |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
87 is(many('/close2', 30, delay => 0.2), '8081: 6, 8082: 24', 'failures delay'); |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
88 |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
89 } |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
90 |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
91 ############################################################################### |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
92 |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
93 sub many { |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
94 my ($uri, $count, %opts) = @_; |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
95 my %ports; |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
96 |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
97 for (1 .. 30) { |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
98 if (http_get($uri) =~ /X-Port: (\d+)/) { |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
99 $ports{$1} = 0 unless defined $ports{$1}; |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
100 $ports{$1}++; |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
101 } |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
102 |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
103 select undef, undef, undef, $opts{delay} if $opts{delay}; |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
104 } |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
105 |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
106 return join ', ', map { $_ . ": " . $ports{$_} } sort keys %ports; |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
107 } |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
108 |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
109 ############################################################################### |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
110 |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
111 sub http_daemon { |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
112 my ($port) = @_; |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
113 my $count = 1; |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
114 |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
115 my $server = IO::Socket::INET->new( |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
116 Proto => 'tcp', |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
117 LocalHost => '127.0.0.1', |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
118 LocalPort => $port, |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
119 Listen => 5, |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
120 Reuse => 1 |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
121 ) |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
122 or die "Can't create listening socket: $!\n"; |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
123 |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
124 while (my $client = $server->accept()) { |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
125 $client->autoflush(1); |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
126 |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
127 my $headers = ''; |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
128 my $uri = ''; |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
129 |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
130 while (<$client>) { |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
131 $headers .= $_; |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
132 last if (/^\x0d?\x0a?$/); |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
133 } |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
134 |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
135 $uri = $1 if $headers =~ /^\S+\s+([^ ]+)\s+HTTP/i; |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
136 |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
137 if ($uri =~ 'close' && $port == 8081 && $count++ % 3 == 0) { |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
138 next; |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
139 } |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
140 |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
141 print $client <<EOF; |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
142 HTTP/1.1 200 OK |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
143 Connection: close |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
144 X-Port: $port |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
145 |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
146 OK |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
147 EOF |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
148 |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
149 close $client; |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
150 } |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
151 } |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
152 |
ba5b92378653
Tests: add some basic upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
153 ############################################################################### |