annotate perl_ssi.t @ 1074:a2b6997b4d48

Tests: perl ssi tests.
author Maxim Dounin <mdounin@mdounin.ru>
date Sat, 29 Oct 2016 23:35:13 +0300
parents
children 3a3a7f68c6d7
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1074
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
1 #!/usr/bin/perl
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
2
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
3 # (C) Maxim Dounin
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
4
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
5 # Tests for embedded perl module.
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
6
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
7 ###############################################################################
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
8
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
9 use warnings;
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
10 use strict;
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
11
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
12 use Test::More;
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
13
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
14 use Socket qw/ CRLF /;
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
15
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
16 BEGIN { use FindBin; chdir($FindBin::Bin); }
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
17
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
18 use lib 'lib';
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
19 use Test::Nginx;
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
20
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
21 ###############################################################################
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
22
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
23 select STDERR; $| = 1;
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
24 select STDOUT; $| = 1;
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
25
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
26 my $t = Test::Nginx->new()->has(qw/http perl ssi/)->plan(3)
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
27 ->write_file_expand('nginx.conf', <<'EOF');
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
28
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
29 %%TEST_GLOBALS%%
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
30
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
31 daemon off;
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
32
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
33 events {
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
34 }
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
35
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
36 http {
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
37 %%TEST_GLOBALS_HTTP%%
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
38
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
39 server {
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
40 listen 127.0.0.1:8080;
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
41 server_name localhost;
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
42
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
43 location / {
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
44 ssi on;
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
45 }
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
46
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
47 location /dummy {
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
48 perl 'sub foo { my $r = shift; $r->print(join ",", @_); }';
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
49 }
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
50 }
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
51 }
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
52
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
53 EOF
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
54
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
55 $t->write_file('t1.html', 'X<!--#perl sub="foo" arg="arg1" -->X');
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
56 $t->write_file('t2.html', 'X<!--#perl sub="foo" arg="arg1" arg="arg2" -->X');
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
57 $t->write_file('noargs.html', 'X<!--#perl sub="foo" -->X');
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
58
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
59 $t->run();
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
60
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
61 ###############################################################################
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
62
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
63 like(http_get('/t1.html'), qr/Xarg1X/, 'perl ssi response');
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
64 like(http_get('/t2.html'), qr/Xarg1,arg2X/, 'perl ssi two args');
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
65 like(http_get('/noargs.html'), qr/XX/, 'perl ssi noargs');
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
66
a2b6997b4d48 Tests: perl ssi tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
67 ###############################################################################