Mercurial > hg > nginx-tests
annotate autoindex.t @ 114:44b281ac4bc6
Tests: add server name tests, including fancy regex ones.
With test config nginx will fail to start as of 0.8.28 due to incorrect
conversion of regular expressions to lowercase. Patch was discussed on
mailing list and will be included in next release.
author | Maxim Dounin <mdounin@mdounin.ru> |
---|---|
date | Mon, 30 Nov 2009 14:47:17 +0300 |
parents | 51f3c88b2930 |
children | 8ac1faaddd2c |
rev | line source |
---|---|
108
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
1 #!/usr/bin/perl |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
2 |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
3 # (C) Maxim Dounin |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
4 |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
5 # Tests for autoindex module. |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
6 |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
7 ############################################################################### |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
8 |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
9 use warnings; |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
10 use strict; |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
11 |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
12 use Test::More; |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
13 |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
14 BEGIN { use FindBin; chdir($FindBin::Bin); } |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
15 |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
16 use lib 'lib'; |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
17 use Test::Nginx; |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
18 |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
19 ############################################################################### |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
20 |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
21 select STDERR; $| = 1; |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
22 select STDOUT; $| = 1; |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
23 |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
24 my $t = Test::Nginx->new()->plan(4) |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
25 ->write_file_expand('nginx.conf', <<'EOF'); |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
26 |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
27 %%TEST_GLOBALS%% |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
28 |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
29 master_process off; |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
30 daemon off; |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
31 |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
32 events { |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
33 } |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
34 |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
35 http { |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
36 %%TEST_GLOBALS_HTTP%% |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
37 |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
38 server { |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
39 listen 127.0.0.1:8080; |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
40 server_name localhost; |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
41 |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
42 location / { |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
43 autoindex on; |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
44 } |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
45 } |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
46 } |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
47 |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
48 EOF |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
49 |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
50 my $d = $t->testdir(); |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
51 |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
52 mkdir("$d/test-dir"); |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
53 symlink("$d/test-dir", "$d/test-dir-link"); |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
54 |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
55 $t->write_file('test-file', ''); |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
56 symlink("$d/test-file", "$d/test-file-link"); |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
57 |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
58 $t->run(); |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
59 |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
60 ############################################################################### |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
61 |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
62 my $r = http_get('/'); |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
63 |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
64 like($r, qr!href="test-file"!ms, 'file'); |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
65 like($r, qr!href="test-file-link"!ms, 'symlink to file'); |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
66 like($r, qr!href="test-dir/"!ms, 'directory'); |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
67 like($r, qr!href="test-dir-link/"!ms, 'symlink to directory'); |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
68 |
93a8f4202b16
Tests: add autoindex module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
69 ############################################################################### |