Mercurial > hg > nginx-tests
annotate ssi_if.t @ 570:f7bc1f74970a
Tests: avoid send errors in syslog tests with mail error_log.
Use a separate mail server block for syslog parsing tests to make sure
that syslog messages are always read by the receiver on the remote side.
Otherwise, syslog message might not be sent due to a pending socket error.
author | Sergey Kandaurov <pluknet@nginx.com> |
---|---|
date | Thu, 07 May 2015 14:28:44 +0300 |
parents | 6a0d934950bc |
children | 6c0a5903d0ae |
rev | line source |
---|---|
190
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
1 #!/usr/bin/perl |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
2 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
3 # (C) Maxim Dounin |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
4 # (C) Valentin Bartenev |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
5 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
6 # Tests for nginx ssi module, "if" statement. |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
7 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
8 ############################################################################### |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
9 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
10 use warnings; |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
11 use strict; |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
12 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
13 use Test::More; |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
14 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
15 BEGIN { use FindBin; chdir($FindBin::Bin); } |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
16 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
17 use lib 'lib'; |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
18 use Test::Nginx; |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
19 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
20 ############################################################################### |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
21 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
22 select STDERR; $| = 1; |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
23 select STDOUT; $| = 1; |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
24 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
25 my $t = Test::Nginx->new()->has(qw/http ssi/)->plan(44); |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
26 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
27 $t->write_file_expand('nginx.conf', <<'EOF'); |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
28 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
29 %%TEST_GLOBALS%% |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
30 |
249
6a0d934950bc
Tests: remove extra spaces in "daemon off".
Maxim Dounin <mdounin@mdounin.ru>
parents:
234
diff
changeset
|
31 daemon off; |
190
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
32 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
33 events { |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
34 } |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
35 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
36 http { |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
37 %%TEST_GLOBALS_HTTP%% |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
38 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
39 server { |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
40 listen 127.0.0.1:8080; |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
41 server_name localhost; |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
42 location / { |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
43 ssi on; |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
44 } |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
45 } |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
46 } |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
47 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
48 EOF |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
49 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
50 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
51 my $if_elif_else = |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
52 '<!--#if expr="$arg_if" -->IF' |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
53 . '<!--#elif expr="$arg_elif" -->ELIF' |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
54 . '<!--#else -->ELSE' |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
55 . '<!--#endif -->'; |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
56 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
57 my $zig = 'GOOD'; |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
58 my $zag = 'GOOD'; |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
59 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
60 foreach my $i (reverse 1 .. 15) { |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
61 if ($i % 2) { |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
62 $zig = |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
63 "<!--#if expr='\$arg_$i' -->$i<!--#else -->$zig<!--#endif -->"; |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
64 $zag = |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
65 "<!--#if expr='\$arg_$i' -->$zag<!--#else -->$i<!--#endif -->"; |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
66 } else { |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
67 $zig = |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
68 "<!--#if expr='\$arg_$i' -->$zig<!--#else -->$i<!--#endif -->"; |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
69 $zag = |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
70 "<!--#if expr='\$arg_$i' -->$i<!--#else -->$zag<!--#endif -->"; |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
71 } |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
72 } |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
73 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
74 $t->run(); |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
75 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
76 ############################################################################### |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
77 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
78 $t->write_file('if_var.html', 'x<!--#if expr="$arg_v" -->OK<!--#endif -->x'); |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
79 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
80 like(http_get('/if_var.html?v=1'), qr/^xOKx$/m, 'if variable exists'); |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
81 like(http_get('/if_var.html'), qr/^xx$/m, 'if variable not exists'); |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
82 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
83 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
84 $t->write_file('if_eq.html', |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
85 'x<!--#if expr="$arg_v = equal" -->OK<!--#endif -->x'); |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
86 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
87 like(http_get('/if_eq.html?v=equal'), qr/^xOKx$/m, 'if var = text'); |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
88 like(http_get('/if_eq.html?v=notequal'), qr/^xx$/m, 'if var = text (false)'); |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
89 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
90 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
91 $t->write_file('if_neq.html', |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
92 'x<!--#if expr="equal != $arg_v" -->OK<!--#endif -->x'); |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
93 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
94 like(http_get('/if_neq.html?v=notequal'), qr/^xOKx$/m, 'if text != var'); |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
95 like(http_get('/if_neq.html?v=equal'), qr/^xx$/m, 'if text != var (false)'); |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
96 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
97 |
234
62114a0c1389
Tests: skip ssi if regex tests without the rewrite module.
Valentin Bartenev <ne@vbart.ru>
parents:
199
diff
changeset
|
98 SKIP: { |
62114a0c1389
Tests: skip ssi if regex tests without the rewrite module.
Valentin Bartenev <ne@vbart.ru>
parents:
199
diff
changeset
|
99 # PCRE may not be available unless we have rewrite module |
62114a0c1389
Tests: skip ssi if regex tests without the rewrite module.
Valentin Bartenev <ne@vbart.ru>
parents:
199
diff
changeset
|
100 |
62114a0c1389
Tests: skip ssi if regex tests without the rewrite module.
Valentin Bartenev <ne@vbart.ru>
parents:
199
diff
changeset
|
101 skip 'no PCRE', 4 unless $t->has_module('rewrite'); |
190
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
102 |
234
62114a0c1389
Tests: skip ssi if regex tests without the rewrite module.
Valentin Bartenev <ne@vbart.ru>
parents:
199
diff
changeset
|
103 $t->write_file('if_eq_re.html', |
62114a0c1389
Tests: skip ssi if regex tests without the rewrite module.
Valentin Bartenev <ne@vbart.ru>
parents:
199
diff
changeset
|
104 'x<!--#if expr="$arg_v = /re+gexp?/" -->OK<!--#endif -->x'); |
62114a0c1389
Tests: skip ssi if regex tests without the rewrite module.
Valentin Bartenev <ne@vbart.ru>
parents:
199
diff
changeset
|
105 |
62114a0c1389
Tests: skip ssi if regex tests without the rewrite module.
Valentin Bartenev <ne@vbart.ru>
parents:
199
diff
changeset
|
106 like(http_get('/if_eq_re.html?v=XreeeegexX'), qr/^xOKx$/m, |
62114a0c1389
Tests: skip ssi if regex tests without the rewrite module.
Valentin Bartenev <ne@vbart.ru>
parents:
199
diff
changeset
|
107 'if var = /regex/'); |
62114a0c1389
Tests: skip ssi if regex tests without the rewrite module.
Valentin Bartenev <ne@vbart.ru>
parents:
199
diff
changeset
|
108 like(http_get('/if_eq_re.html?v=XrgxX'), qr/^xx$/m, |
62114a0c1389
Tests: skip ssi if regex tests without the rewrite module.
Valentin Bartenev <ne@vbart.ru>
parents:
199
diff
changeset
|
109 'if var = /regex/ (false)'); |
190
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
110 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
111 |
234
62114a0c1389
Tests: skip ssi if regex tests without the rewrite module.
Valentin Bartenev <ne@vbart.ru>
parents:
199
diff
changeset
|
112 $t->write_file('if_neq_re.html', |
62114a0c1389
Tests: skip ssi if regex tests without the rewrite module.
Valentin Bartenev <ne@vbart.ru>
parents:
199
diff
changeset
|
113 'x<!--#if expr="$arg_v != /re+gexp?/" -->OK<!--#endif -->x'); |
190
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
114 |
234
62114a0c1389
Tests: skip ssi if regex tests without the rewrite module.
Valentin Bartenev <ne@vbart.ru>
parents:
199
diff
changeset
|
115 like(http_get('/if_neq_re.html?v=XrgxX'), qr/^xOKx$/m, |
62114a0c1389
Tests: skip ssi if regex tests without the rewrite module.
Valentin Bartenev <ne@vbart.ru>
parents:
199
diff
changeset
|
116 'if var != /regex/'); |
62114a0c1389
Tests: skip ssi if regex tests without the rewrite module.
Valentin Bartenev <ne@vbart.ru>
parents:
199
diff
changeset
|
117 like(http_get('/if_neq_re.html?v=XreeeegexX'), qr/^xx$/m, |
62114a0c1389
Tests: skip ssi if regex tests without the rewrite module.
Valentin Bartenev <ne@vbart.ru>
parents:
199
diff
changeset
|
118 'if var != /regex/ (false)'); |
62114a0c1389
Tests: skip ssi if regex tests without the rewrite module.
Valentin Bartenev <ne@vbart.ru>
parents:
199
diff
changeset
|
119 } |
190
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
120 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
121 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
122 $t->write_file('if_varvar.html', |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
123 'x<!--#if expr="$arg_v = var$arg_v2" -->OK<!--#endif -->x'); |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
124 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
125 like(http_get('/if_varvar.html?v=varHERE&v2=HERE'), qr/^xOKx$/m, |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
126 'if var = complex'); |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
127 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
128 |
234
62114a0c1389
Tests: skip ssi if regex tests without the rewrite module.
Valentin Bartenev <ne@vbart.ru>
parents:
199
diff
changeset
|
129 SKIP: { |
62114a0c1389
Tests: skip ssi if regex tests without the rewrite module.
Valentin Bartenev <ne@vbart.ru>
parents:
199
diff
changeset
|
130 # PCRE may not be available unless we have rewrite module |
62114a0c1389
Tests: skip ssi if regex tests without the rewrite module.
Valentin Bartenev <ne@vbart.ru>
parents:
199
diff
changeset
|
131 |
62114a0c1389
Tests: skip ssi if regex tests without the rewrite module.
Valentin Bartenev <ne@vbart.ru>
parents:
199
diff
changeset
|
132 skip 'no PCRE', 2 unless $t->has_module('rewrite'); |
190
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
133 |
234
62114a0c1389
Tests: skip ssi if regex tests without the rewrite module.
Valentin Bartenev <ne@vbart.ru>
parents:
199
diff
changeset
|
134 $t->write_file('if_cap_re.html', |
62114a0c1389
Tests: skip ssi if regex tests without the rewrite module.
Valentin Bartenev <ne@vbart.ru>
parents:
199
diff
changeset
|
135 'x<!--#if expr="$arg_v = /(CAP\d).*(CAP\d)/" -->' |
62114a0c1389
Tests: skip ssi if regex tests without the rewrite module.
Valentin Bartenev <ne@vbart.ru>
parents:
199
diff
changeset
|
136 . '<!--#echo var="1" -->x<!--#echo var="2" -->' |
62114a0c1389
Tests: skip ssi if regex tests without the rewrite module.
Valentin Bartenev <ne@vbart.ru>
parents:
199
diff
changeset
|
137 . '<!--#endif -->x'); |
62114a0c1389
Tests: skip ssi if regex tests without the rewrite module.
Valentin Bartenev <ne@vbart.ru>
parents:
199
diff
changeset
|
138 |
62114a0c1389
Tests: skip ssi if regex tests without the rewrite module.
Valentin Bartenev <ne@vbart.ru>
parents:
199
diff
changeset
|
139 like(http_get('/if_cap_re.html?v=hereCAP1andCAP2'), qr/^xCAP1xCAP2x$/m, |
62114a0c1389
Tests: skip ssi if regex tests without the rewrite module.
Valentin Bartenev <ne@vbart.ru>
parents:
199
diff
changeset
|
140 'if regex with captures'); |
190
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
141 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
142 |
234
62114a0c1389
Tests: skip ssi if regex tests without the rewrite module.
Valentin Bartenev <ne@vbart.ru>
parents:
199
diff
changeset
|
143 $t->write_file('if_ncap_re.html', |
62114a0c1389
Tests: skip ssi if regex tests without the rewrite module.
Valentin Bartenev <ne@vbart.ru>
parents:
199
diff
changeset
|
144 'x<!--#if expr="$arg_v = /(?P<ncap>HERE)/" -->' |
62114a0c1389
Tests: skip ssi if regex tests without the rewrite module.
Valentin Bartenev <ne@vbart.ru>
parents:
199
diff
changeset
|
145 . '<!--#echo var="ncap" -->' |
62114a0c1389
Tests: skip ssi if regex tests without the rewrite module.
Valentin Bartenev <ne@vbart.ru>
parents:
199
diff
changeset
|
146 . '<!--#endif -->x'); |
190
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
147 |
234
62114a0c1389
Tests: skip ssi if regex tests without the rewrite module.
Valentin Bartenev <ne@vbart.ru>
parents:
199
diff
changeset
|
148 like(http_get('/if_ncap_re.html?v=captureHEREeee'), qr/^xHEREx$/m, |
62114a0c1389
Tests: skip ssi if regex tests without the rewrite module.
Valentin Bartenev <ne@vbart.ru>
parents:
199
diff
changeset
|
149 'if regex with named capture'); |
62114a0c1389
Tests: skip ssi if regex tests without the rewrite module.
Valentin Bartenev <ne@vbart.ru>
parents:
199
diff
changeset
|
150 } |
190
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
151 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
152 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
153 $t->write_file('if.html', 'x' . $if_elif_else . 'x'); |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
154 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
155 like(http_get('/if.html?if=1'), qr/^xIFx$/m, 'if'); |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
156 like(http_get('/if.html?if=1&elif=1'), qr/^xIFx$/m, 'if suppresses elif'); |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
157 like(http_get('/if.html?elif=1'), qr/^xELIFx$/m, 'elif'); |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
158 like(http_get('/if.html'), qr/^xELSEx$/m, 'else'); |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
159 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
160 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
161 $t->write_file('if_multi.html', |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
162 'x<!--#if expr="$arg_1" -->IF1<!--#else -->ELSE1<!--#endif -->' |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
163 . 'x<!--#if expr="$arg_2" -->IF2<!--#else -->ELSE2<!--#endif -->' |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
164 . 'x<!--#if expr="$arg_3" -->IF3<!--#else -->ELSE3<!--#endif -->' |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
165 . 'x<!--#if expr="$arg_4" -->IF4<!--#else -->ELSE4<!--#endif -->' |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
166 . 'x<!--#if expr="$arg_5" -->IF5<!--#else -->ELSE5<!--#endif -->x'); |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
167 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
168 like(http_get('/if_multi.html?1=t&2=t&3=t&4=t&5=t'), |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
169 qr/^xIF1xIF2xIF3xIF4xIF5x$/m, 'multiple if (sequentially)'); |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
170 like(http_get('/if_multi.html?1=t&3=t&5=t'), qr/^xIF1xELSE2xIF3xELSE4xIF5x$/m, |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
171 'multiple if (interlaced)'); |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
172 like(http_get('/if_multi.html?2=t&4=t'), qr/^xELSE1xIF2xELSE3xIF4xELSE5x$/m, |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
173 'multiple if (interlaced reversed)'); |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
174 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
175 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
176 $t->write_file('if_in_block.html', |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
177 '<!--#block name="one" -->' . $if_elif_else . '<!--#endblock -->' |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
178 . 'x<!--#include virtual="/404?$args" stub="one" -->x'); |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
179 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
180 like(http_get('/if_in_block.html?if=1'), qr/^xIFx$/m, 'if (in block)'); |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
181 like(http_get('/if_in_block.html?if=1&elif=1'), qr/^xIFx$/m, |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
182 'if suppresses elif (in block)'); |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
183 like(http_get('/if_in_block.html?elif=1'), qr/^xELIFx$/m, 'elif (in block)'); |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
184 like(http_get('/if_in_block.html'), qr/^xELSEx$/m, 'else (in block)'); |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
185 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
186 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
187 $t->write_file('if_config_set_echo.html', |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
188 'x<!--#if expr="$arg_if" -->' |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
189 . '<!--#config timefmt="IF" -->' |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
190 . '<!--#set var="v" value="$date_gmt" -->' |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
191 . '<!--#echo var="v" -->' |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
192 . '<!--#else -->' |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
193 . '<!--#config timefmt="ELSE" -->' |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
194 . '<!--#set var="v" value="$date_gmt" -->' |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
195 . '<!--#echo var="v" -->' |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
196 . '<!--#endif -->x'); |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
197 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
198 like(http_get('/if_config_set_echo.html?if=1'), qr/^xIFx$/m, |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
199 'if config-set-echo'); |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
200 like(http_get('/if_config_set_echo.html'), qr/^xELSEx$/m, |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
201 'else config-set-echo'); |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
202 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
203 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
204 $t->write_file('if_include.html', |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
205 'x<!--#if expr="$arg_if" -->' |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
206 . '<!--#include virtual="/if.html?if=1" -->' |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
207 . '<!--#else -->' |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
208 . '<!--#include virtual="/if.html" -->' |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
209 . '<!--#endif -->x'); |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
210 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
211 like(http_get('/if_include.html?if=1'), qr/^xxIFxx$/m, |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
212 'if include'); |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
213 like(http_get('/if_include.html'), qr/^xxELSExx$/m, |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
214 'else include'); |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
215 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
216 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
217 $t->write_file('if_block.html', |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
218 '<!--#if expr="$arg_if" -->' |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
219 . '<!--#block name="one" -->IF<!--#endblock -->' |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
220 . '<!--#else -->' |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
221 . '<!--#block name="one" -->ELSE<!--#endblock -->' |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
222 . '<!--#endif -->' |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
223 . 'x<!--#include virtual="/404" stub="one" -->x'); |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
224 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
225 like(http_get('/if_block.html?if=1'), qr/^xIFx$/m, 'if block'); |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
226 like(http_get('/if_block.html'), qr/^xELSEx$/m, 'else block'); |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
227 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
228 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
229 TODO: { |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
230 local $TODO = 'support for nested ifs'; |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
231 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
232 $t->write_file('ifif.html', |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
233 'x<!--#if expr="$arg__if" -->IFx' . $if_elif_else |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
234 . '<!--#elif expr="$arg__elif" -->ELIFx' . $if_elif_else |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
235 . '<!--#else -->ELSEx' . $if_elif_else |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
236 . '<!--#endif -->x'); |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
237 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
238 like(http_get('/ifif.html?_if=1&if=1'), qr/^xIFxIFx$/m, 'if if'); |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
239 like(http_get('/ifif.html?_if=1&elif=1'), qr/^xIFxELIFx$/m, 'if elif'); |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
240 like(http_get('/ifif.html?_if=1'), qr/^xIFxELSEx$/m, 'if else'); |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
241 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
242 like(http_get('/ifif.html?_elif=1&if=1'), qr/^xELIFxIFx$/m, 'elif if'); |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
243 like(http_get('/ifif.html?_elif=1&elif=1'), qr/^xELIFxELIFx$/m, 'elif elif'); |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
244 like(http_get('/ifif.html?_elif=1'), qr/^xELIFxELSEx$/m, 'elif else'); |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
245 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
246 like(http_get('/ifif.html?if=1'), qr/^xELSExIFx$/m, 'else if'); |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
247 like(http_get('/ifif.html?elif=1'), qr/^xELSExELIFx$/m, 'else elif'); |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
248 like(http_get('/ifif.html'), qr/^xELSExELSEx$/m, 'else else'); |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
249 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
250 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
251 $t->write_file('zigzag.html', |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
252 "x<!--#if expr='\$arg_0' -->$zig<!--#else -->$zag<!--#endif -->x"); |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
253 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
254 like(http_get('/zigzag.html?0=t&2=t&4=t&6=t&8=t&10=t&12=t&14=t'), |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
255 qr/^xGOODx$/m, 'zigzag'); |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
256 like(http_get('/zigzag.html?1=t&3=t&5=t&7=t&9=t&11=t&13=t&15=t'), |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
257 qr/^xGOODx$/m, 'zagzig'); |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
258 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
259 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
260 $t->write_file('zigzag_block.html', |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
261 '<!--#block name="one" -->' |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
262 . "x<!--#if expr='\$arg_0' -->$zig<!--#else -->$zag<!--#endif -->x" |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
263 . '<!--#endblock -->' |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
264 . 'x<!--#include virtual="/404?$args" stub="one" -->x'); |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
265 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
266 like(http_get('/zigzag_block.html?0=t&2=t&4=t&6=t&8=t&10=t&12=t&14=t'), |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
267 qr/^xGOODx$/m, 'zigzag block'); |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
268 like(http_get('/zigzag_block.html?1=t&3=t&5=t&7=t&9=t&11=t&13=t&15=t'), |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
269 qr/^xGOODx$/m, 'zagzig block'); |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
270 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
271 } |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
272 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
273 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
274 like(`grep -F '[alert]' ${\($t->testdir())}/error.log`, qr/^$/s, 'no alerts'); |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
275 |
1d66a6a509d0
Tests: SSI "if" statement tests.
Valentin Bartenev <ne@vbart.ru>
parents:
diff
changeset
|
276 ############################################################################### |