annotate auth_basic.t @ 1728:6d5ecf445e57

Tests: added HTTP/2 test with big request body. Notably, it is useful with body buffering in filters, in which case the stream window is flow controlled based on the preread buffer.
author Sergey Kandaurov <pluknet@nginx.com>
date Sat, 04 Sep 2021 14:50:02 +0300
parents 53a801bf4d0b
children 032ccd3118cb
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
150
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
1 #!/usr/bin/perl
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
2
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
3 # (C) Maxim Dounin
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
4
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
5 # Tests for auth basic module.
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
6
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
7 ###############################################################################
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
8
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
9 use warnings;
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
10 use strict;
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
11
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
12 use Test::More;
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
13
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
14 use MIME::Base64;
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
15
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
16 BEGIN { use FindBin; chdir($FindBin::Bin); }
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
17
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
18 use lib 'lib';
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
19 use Test::Nginx;
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
20
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
21 ###############################################################################
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
22
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
23 select STDERR; $| = 1;
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
24 select STDOUT; $| = 1;
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
25
1719
53a801bf4d0b Tests: auth_basic_user_file variable tests with conf_prefix.
Sergey Kandaurov <pluknet@nginx.com>
parents: 1251
diff changeset
26 my $t = Test::Nginx->new()->has(qw/http auth_basic/)->plan(24)
150
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
27 ->write_file_expand('nginx.conf', <<'EOF');
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
28
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
29 %%TEST_GLOBALS%%
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
30
249
6a0d934950bc Tests: remove extra spaces in "daemon off".
Maxim Dounin <mdounin@mdounin.ru>
parents: 241
diff changeset
31 daemon off;
150
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
32
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
33 events {
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
34 }
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
35
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
36 http {
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
37 %%TEST_GLOBALS_HTTP%%
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
38
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
39 server {
974
882267679006 Tests: simplified parallel modifications in tests.
Andrey Zelenkov <zelenkov@nginx.com>
parents: 952
diff changeset
40 listen 127.0.0.1:8080;
150
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
41 server_name localhost;
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
42
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
43 location / {
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
44 auth_basic "closed site";
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
45 auth_basic_user_file %%TESTDIR%%/htpasswd;
666
64f22e0aaab2 Tests: auth basic tests for merged "off" value and user not found.
Sergey Kandaurov <pluknet@nginx.com>
parents: 439
diff changeset
46
64f22e0aaab2 Tests: auth basic tests for merged "off" value and user not found.
Sergey Kandaurov <pluknet@nginx.com>
parents: 439
diff changeset
47 location /inner {
64f22e0aaab2 Tests: auth basic tests for merged "off" value and user not found.
Sergey Kandaurov <pluknet@nginx.com>
parents: 439
diff changeset
48 auth_basic off;
64f22e0aaab2 Tests: auth basic tests for merged "off" value and user not found.
Sergey Kandaurov <pluknet@nginx.com>
parents: 439
diff changeset
49 alias %%TESTDIR%%/;
64f22e0aaab2 Tests: auth basic tests for merged "off" value and user not found.
Sergey Kandaurov <pluknet@nginx.com>
parents: 439
diff changeset
50 }
1719
53a801bf4d0b Tests: auth_basic_user_file variable tests with conf_prefix.
Sergey Kandaurov <pluknet@nginx.com>
parents: 1251
diff changeset
51
53a801bf4d0b Tests: auth_basic_user_file variable tests with conf_prefix.
Sergey Kandaurov <pluknet@nginx.com>
parents: 1251
diff changeset
52 location /var {
53a801bf4d0b Tests: auth_basic_user_file variable tests with conf_prefix.
Sergey Kandaurov <pluknet@nginx.com>
parents: 1251
diff changeset
53 # prepended with conf_prefix
53a801bf4d0b Tests: auth_basic_user_file variable tests with conf_prefix.
Sergey Kandaurov <pluknet@nginx.com>
parents: 1251
diff changeset
54 auth_basic_user_file $arg_f;
53a801bf4d0b Tests: auth_basic_user_file variable tests with conf_prefix.
Sergey Kandaurov <pluknet@nginx.com>
parents: 1251
diff changeset
55 alias %%TESTDIR%%/;
53a801bf4d0b Tests: auth_basic_user_file variable tests with conf_prefix.
Sergey Kandaurov <pluknet@nginx.com>
parents: 1251
diff changeset
56 }
150
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
57 }
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
58 }
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
59 }
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
60
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
61 EOF
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
62
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
63 $t->write_file('index.html', 'SEETHIS');
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
64
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
65 $t->write_file(
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
66 'htpasswd',
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
67 'crypt:' . crypt('password', 'salt') . "\n" .
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
68 'crypt1:' . crypt('password', '$1$salt$') . "\n" .
229
9969fcf1f27e Tests: corrupted password entries tests.
Maxim Dounin <mdounin@mdounin.ru>
parents: 223
diff changeset
69 'crypt2:' . '$1$' . "\n" .
150
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
70 'apr1:' . '$apr1$salt$Xxd1irWT9ycqoYxGFn4cb.' . "\n" .
229
9969fcf1f27e Tests: corrupted password entries tests.
Maxim Dounin <mdounin@mdounin.ru>
parents: 223
diff changeset
71 'apr12:' . '$apr1$' . "\n" .
150
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
72 'plain:' . '{PLAIN}password' . "\n" .
229
9969fcf1f27e Tests: corrupted password entries tests.
Maxim Dounin <mdounin@mdounin.ru>
parents: 223
diff changeset
73 'ssha:' . '{SSHA}yI6cZwQadOA1e+/f+T+H3eCQQhRzYWx0' . "\n" .
9969fcf1f27e Tests: corrupted password entries tests.
Maxim Dounin <mdounin@mdounin.ru>
parents: 223
diff changeset
74 'ssha2:' . '{SSHA}_____wQadOA1e+/f+T+H3eCQQhRzYWx0' . "\n" .
259
024bae0ecd0c Tests: {SHA} password scheme tests (ticket #50).
Maxim Dounin <mdounin@mdounin.ru>
parents: 249
diff changeset
75 'ssha3:' . '{SSHA}Zm9vCg==' . "\n" .
024bae0ecd0c Tests: {SHA} password scheme tests (ticket #50).
Maxim Dounin <mdounin@mdounin.ru>
parents: 249
diff changeset
76 'sha:' . '{SHA}W6ph5Mm5Pz8GgiULbPgzG37mj9g=' . "\n" .
024bae0ecd0c Tests: {SHA} password scheme tests (ticket #50).
Maxim Dounin <mdounin@mdounin.ru>
parents: 249
diff changeset
77 'sha2:' . '{SHA}_____Mm5Pz8GgiULbPgzG37mj9g=' . "\n" .
024bae0ecd0c Tests: {SHA} password scheme tests (ticket #50).
Maxim Dounin <mdounin@mdounin.ru>
parents: 249
diff changeset
78 'sha3:' . '{SHA}Zm9vCg==' . "\n"
150
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
79 );
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
80
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
81 $t->run();
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
82
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
83 ###############################################################################
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
84
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
85 like(http_get('/'), qr!401 Unauthorized!ms, 'rejects unathorized');
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
86
223
f9325406df0b Tests: skip tests not appropriate for win32.
Maxim Dounin <mdounin@mdounin.ru>
parents: 166
diff changeset
87 SKIP: {
f9325406df0b Tests: skip tests not appropriate for win32.
Maxim Dounin <mdounin@mdounin.ru>
parents: 166
diff changeset
88
235
8d58b624a142 Tests: fix number of skipped tests in auth_basic.t.
Maxim Dounin <mdounin@mdounin.ru>
parents: 229
diff changeset
89 skip 'no crypt on win32', 5 if $^O eq 'MSWin32';
223
f9325406df0b Tests: skip tests not appropriate for win32.
Maxim Dounin <mdounin@mdounin.ru>
parents: 166
diff changeset
90
150
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
91 like(http_get_auth('/', 'crypt', 'password'), qr!SEETHIS!, 'normal crypt');
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
92 unlike(http_get_auth('/', 'crypt', '123'), qr!SEETHIS!, 'normal wrong');
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
93
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
94 like(http_get_auth('/', 'crypt1', 'password'), qr!SEETHIS!, 'crypt $1$ (md5)');
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
95 unlike(http_get_auth('/', 'crypt1', '123'), qr!SEETHIS!, 'crypt $1$ wrong');
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
96
229
9969fcf1f27e Tests: corrupted password entries tests.
Maxim Dounin <mdounin@mdounin.ru>
parents: 223
diff changeset
97 like(http_get_auth('/', 'crypt2', '1'), qr!401 Unauthorized!,
9969fcf1f27e Tests: corrupted password entries tests.
Maxim Dounin <mdounin@mdounin.ru>
parents: 223
diff changeset
98 'crypt $1$ broken');
9969fcf1f27e Tests: corrupted password entries tests.
Maxim Dounin <mdounin@mdounin.ru>
parents: 223
diff changeset
99
223
f9325406df0b Tests: skip tests not appropriate for win32.
Maxim Dounin <mdounin@mdounin.ru>
parents: 166
diff changeset
100 }
f9325406df0b Tests: skip tests not appropriate for win32.
Maxim Dounin <mdounin@mdounin.ru>
parents: 166
diff changeset
101
150
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
102 like(http_get_auth('/', 'apr1', 'password'), qr!SEETHIS!, 'apr1 md5');
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
103 like(http_get_auth('/', 'plain', 'password'), qr!SEETHIS!, 'plain password');
1251
766bcbb632ee Tests: removed TODO and try_run() checks for legacy versions.
Sergey Kandaurov <pluknet@nginx.com>
parents: 974
diff changeset
104 like(http_get_auth('/', 'ssha', 'password'), qr!SEETHIS!, 'ssha');
766bcbb632ee Tests: removed TODO and try_run() checks for legacy versions.
Sergey Kandaurov <pluknet@nginx.com>
parents: 974
diff changeset
105 like(http_get_auth('/', 'sha', 'password'), qr!SEETHIS!, 'sha');
259
024bae0ecd0c Tests: {SHA} password scheme tests (ticket #50).
Maxim Dounin <mdounin@mdounin.ru>
parents: 249
diff changeset
106
150
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
107 unlike(http_get_auth('/', 'apr1', '123'), qr!SEETHIS!, 'apr1 md5 wrong');
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
108 unlike(http_get_auth('/', 'plain', '123'), qr!SEETHIS!, 'plain wrong');
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
109 unlike(http_get_auth('/', 'ssha', '123'), qr!SEETHIS!, 'ssha wrong');
259
024bae0ecd0c Tests: {SHA} password scheme tests (ticket #50).
Maxim Dounin <mdounin@mdounin.ru>
parents: 249
diff changeset
110 unlike(http_get_auth('/', 'sha', '123'), qr!SEETHIS!, 'sha wrong');
150
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
111
229
9969fcf1f27e Tests: corrupted password entries tests.
Maxim Dounin <mdounin@mdounin.ru>
parents: 223
diff changeset
112 like(http_get_auth('/', 'apr12', '1'), qr!401 Unauthorized!, 'apr1 md5 broken');
9969fcf1f27e Tests: corrupted password entries tests.
Maxim Dounin <mdounin@mdounin.ru>
parents: 223
diff changeset
113 like(http_get_auth('/', 'ssha2', '1'), qr!401 Unauthorized!, 'ssha broken 1');
9969fcf1f27e Tests: corrupted password entries tests.
Maxim Dounin <mdounin@mdounin.ru>
parents: 223
diff changeset
114 like(http_get_auth('/', 'ssha3', '1'), qr!401 Unauthorized!, 'ssha broken 2');
259
024bae0ecd0c Tests: {SHA} password scheme tests (ticket #50).
Maxim Dounin <mdounin@mdounin.ru>
parents: 249
diff changeset
115 like(http_get_auth('/', 'sha2', '1'), qr!401 Unauthorized!, 'sha broken 1');
024bae0ecd0c Tests: {SHA} password scheme tests (ticket #50).
Maxim Dounin <mdounin@mdounin.ru>
parents: 249
diff changeset
116 like(http_get_auth('/', 'sha3', '1'), qr!401 Unauthorized!, 'sha broken 2');
229
9969fcf1f27e Tests: corrupted password entries tests.
Maxim Dounin <mdounin@mdounin.ru>
parents: 223
diff changeset
117
666
64f22e0aaab2 Tests: auth basic tests for merged "off" value and user not found.
Sergey Kandaurov <pluknet@nginx.com>
parents: 439
diff changeset
118 like(http_get_auth('/', 'notfound', '1'), qr!401 Unauthorized!, 'not found');
64f22e0aaab2 Tests: auth basic tests for merged "off" value and user not found.
Sergey Kandaurov <pluknet@nginx.com>
parents: 439
diff changeset
119 like(http_get('/inner/'), qr!SEETHIS!, 'inner off');
64f22e0aaab2 Tests: auth basic tests for merged "off" value and user not found.
Sergey Kandaurov <pluknet@nginx.com>
parents: 439
diff changeset
120
1719
53a801bf4d0b Tests: auth_basic_user_file variable tests with conf_prefix.
Sergey Kandaurov <pluknet@nginx.com>
parents: 1251
diff changeset
121 like(http_get_auth('/var/?f=htpasswd', 'apr1', 'password'), qr!SEETHIS!,
53a801bf4d0b Tests: auth_basic_user_file variable tests with conf_prefix.
Sergey Kandaurov <pluknet@nginx.com>
parents: 1251
diff changeset
122 'user file variable');
53a801bf4d0b Tests: auth_basic_user_file variable tests with conf_prefix.
Sergey Kandaurov <pluknet@nginx.com>
parents: 1251
diff changeset
123 unlike(http_get_auth('/var/?f=nx', 'apr1', 'password'), qr!SEETHIS!,
53a801bf4d0b Tests: auth_basic_user_file variable tests with conf_prefix.
Sergey Kandaurov <pluknet@nginx.com>
parents: 1251
diff changeset
124 'user file variable not found');
53a801bf4d0b Tests: auth_basic_user_file variable tests with conf_prefix.
Sergey Kandaurov <pluknet@nginx.com>
parents: 1251
diff changeset
125 unlike(http_get_auth('/var/', 'apr1', 'password'), qr!SEETHIS!,
53a801bf4d0b Tests: auth_basic_user_file variable tests with conf_prefix.
Sergey Kandaurov <pluknet@nginx.com>
parents: 1251
diff changeset
126 'user file variable bad value');
53a801bf4d0b Tests: auth_basic_user_file variable tests with conf_prefix.
Sergey Kandaurov <pluknet@nginx.com>
parents: 1251
diff changeset
127
150
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
128 ###############################################################################
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
129
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
130 sub http_get_auth {
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
131 my ($url, $user, $password) = @_;
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
132
439
d5b541a8cf95 Tests: removed extra EOL in auth_basic.t requests.
Sergey Kandaurov <pluknet@nginx.com>
parents: 317
diff changeset
133 my $auth = encode_base64($user . ':' . $password, '');
150
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
134
439
d5b541a8cf95 Tests: removed extra EOL in auth_basic.t requests.
Sergey Kandaurov <pluknet@nginx.com>
parents: 317
diff changeset
135 return http(<<EOF);
150
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
136 GET $url HTTP/1.0
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
137 Host: localhost
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
138 Authorization: Basic $auth
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
139
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
140 EOF
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
141 }
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
142
6b73d6c8f26c Tests: add some auth basic module tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
143 ###############################################################################