Mercurial > hg > nginx-tests
annotate ssi_if.t @ 1026:e74a9342eb96
Tests: stream tests for per-upstream variables.
author | Sergey Kandaurov <pluknet@nginx.com> |
---|---|
date | Mon, 05 Sep 2016 22:57:44 +0300 |
parents | 882267679006 |
children |
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 |
593
6c0a5903d0ae
Tests: cleanup now duplicating tests for no alerts.
Sergey Kandaurov <pluknet@nginx.com>
parents:
249
diff
changeset
|
25 my $t = Test::Nginx->new()->has(qw/http ssi/)->plan(43); |
190
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 { |
974
882267679006
Tests: simplified parallel modifications in tests.
Andrey Zelenkov <zelenkov@nginx.com>
parents:
952
diff
changeset
|
40 listen 127.0.0.1:8080; |
190
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 ############################################################################### |