Mercurial > hg > nginx-tests
annotate stream_js_buffer.t @ 1851:0351dee227a8
Tests: unbreak tests with dynamic certificates on stable.
In 74cffa9d4c43, ticket based session reuse is enabled in addition to
using a shared SSL session cache. This changed how a session can be
resumed in a different server:
- for a session ID based resumption, it is resumed in the same context
- when using session tickets, a key name is also checked for matching
- with a ticket callback, this is skipped in favor of callback's logic
This makes 'session id context match' tests fail with session tickets
on stable since ticket key names are unique in distinct SSL contexts.
On the other hand, tests pass on 1.23.2+ due to automatic ticket keys
rotation that installs ticket callback, and using a common shared SSL
session cache.
author | Sergey Kandaurov <pluknet@nginx.com> |
---|---|
date | Tue, 28 Mar 2023 01:36:32 +0400 |
parents | 7cf848422b28 |
children |
rev | line source |
---|---|
1625
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
1 #!/usr/bin/perl |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
2 |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
3 # (C) Dmitry Volyntsev |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
4 # (C) Nginx, Inc. |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
5 |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
6 # Tests for stream njs module, buffer properties. |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
7 |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
8 ############################################################################### |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
9 |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
10 use warnings; |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
11 use strict; |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
12 |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
13 use Test::More; |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
14 |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
15 BEGIN { use FindBin; chdir($FindBin::Bin); } |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
16 |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
17 use lib 'lib'; |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
18 use Test::Nginx; |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
19 use Test::Nginx::Stream qw/ stream /; |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
20 |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
21 ############################################################################### |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
22 |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
23 select STDERR; $| = 1; |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
24 select STDOUT; $| = 1; |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
25 |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
26 my $t = Test::Nginx->new()->has(qw/http proxy rewrite stream stream_return/) |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
27 ->write_file_expand('nginx.conf', <<'EOF'); |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
28 |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
29 %%TEST_GLOBALS%% |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
30 |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
31 daemon off; |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
32 |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
33 events { |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
34 } |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
35 |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
36 http { |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
37 %%TEST_GLOBALS_HTTP%% |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
38 |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
39 js_import test.js; |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
40 |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
41 server { |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
42 listen 127.0.0.1:8080; |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
43 server_name localhost; |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
44 |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
45 location /njs { |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
46 js_content test.njs; |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
47 } |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
48 |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
49 location /p/ { |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
50 proxy_pass http://127.0.0.1:8085/; |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
51 } |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
52 |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
53 location /return { |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
54 return 200 'RETURN:$http_foo'; |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
55 } |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
56 } |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
57 } |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
58 |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
59 stream { |
1792
d16310f0ada7
Tests: added missing TEST_GLOBALS_STREAM templates.
Sergey Kandaurov <pluknet@nginx.com>
parents:
1626
diff
changeset
|
60 %%TEST_GLOBALS_STREAM%% |
d16310f0ada7
Tests: added missing TEST_GLOBALS_STREAM templates.
Sergey Kandaurov <pluknet@nginx.com>
parents:
1626
diff
changeset
|
61 |
1625
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
62 js_import test.js; |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
63 |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
64 js_set $type test.type; |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
65 js_set $binary_var test.binary_var; |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
66 |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
67 server { |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
68 listen 127.0.0.1:8081; |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
69 return $type; |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
70 } |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
71 |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
72 server { |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
73 listen 127.0.0.1:8082; |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
74 return $binary_var; |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
75 } |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
76 |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
77 server { |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
78 listen 127.0.0.1:8083; |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
79 js_preread test.cb_mismatch; |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
80 proxy_pass 127.0.0.1:8090; |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
81 } |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
82 |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
83 server { |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
84 listen 127.0.0.1:8084; |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
85 js_preread test.cb_mismatch2; |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
86 proxy_pass 127.0.0.1:8090; |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
87 } |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
88 |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
89 server { |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
90 listen 127.0.0.1:8085; |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
91 js_filter test.header_inject; |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
92 proxy_pass 127.0.0.1:8080; |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
93 } |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
94 } |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
95 |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
96 EOF |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
97 |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
98 $t->write_file('test.js', <<EOF); |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
99 function test_njs(r) { |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
100 r.return(200, njs.version); |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
101 } |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
102 |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
103 function type(s) { |
1626
a35445ae8de7
Tests: adapted js buffer tests to renaming vars to rawVariables.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
1625
diff
changeset
|
104 var v = s.rawVariables.remote_addr; |
1625
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
105 var type = Buffer.isBuffer(v) ? 'buffer' : (typeof v); |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
106 return type; |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
107 } |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
108 |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
109 function binary_var(s) { |
1626
a35445ae8de7
Tests: adapted js buffer tests to renaming vars to rawVariables.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
1625
diff
changeset
|
110 var test = s.rawVariables |
a35445ae8de7
Tests: adapted js buffer tests to renaming vars to rawVariables.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
1625
diff
changeset
|
111 .binary_remote_addr.equals(Buffer.from([127,0,0,1])); |
1625
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
112 return test; |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
113 } |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
114 |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
115 function cb_mismatch(s) { |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
116 try { |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
117 s.on('upload', () => {}); |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
118 s.on('downstream', () => {}); |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
119 } catch (e) { |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
120 throw new Error(`cb_mismatch:\${e.message}`) |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
121 } |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
122 } |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
123 |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
124 function cb_mismatch2(s) { |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
125 try { |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
126 s.on('upstream', () => {}); |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
127 s.on('download', () => {}); |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
128 } catch (e) { |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
129 throw new Error(`cb_mismatch2:\${e.message}`) |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
130 } |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
131 } |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
132 |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
133 function header_inject(s) { |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
134 var req = Buffer.from([]); |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
135 |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
136 s.on('upstream', function(data, flags) { |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
137 req = Buffer.concat([req, data]); |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
138 |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
139 var n = req.indexOf('\\n'); |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
140 if (n != -1) { |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
141 var rest = req.slice(n + 1); |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
142 req = req.slice(0, n + 1); |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
143 |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
144 s.send(req, flags); |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
145 s.send('Foo: foo\\r\\n', flags); |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
146 s.send(rest, flags); |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
147 |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
148 s.off('upstream'); |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
149 } |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
150 }); |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
151 } |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
152 |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
153 export default {njs: test_njs, type, binary_var, cb_mismatch, cb_mismatch2, |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
154 header_inject}; |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
155 |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
156 EOF |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
157 |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
158 $t->try_run('no njs ngx')->plan(5); |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
159 |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
160 ############################################################################### |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
161 |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
162 is(stream('127.0.0.1:' . port(8081))->read(), 'buffer', 'var type'); |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
163 is(stream('127.0.0.1:' . port(8082))->read(), 'true', 'binary var'); |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
164 |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
165 stream('127.0.0.1:' . port(8083))->io('x'); |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
166 stream('127.0.0.1:' . port(8084))->io('x'); |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
167 |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
168 like(http_get('/p/return'), qr/RETURN:foo/, 'injected header'); |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
169 |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
170 $t->stop(); |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
171 |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
172 ok(index($t->read_file('error.log'), 'cb_mismatch:mixing string and buffer') |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
173 > 0, 'cb mismatch'); |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
174 ok(index($t->read_file('error.log'), 'cb_mismatch2:mixing string and buffer') |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
175 > 0, 'cb mismatch'); |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
176 |
a140cab489e8
Tests: added js buffer tests.
Dmitry Volyntsev <xeioex@nginx.com>
parents:
diff
changeset
|
177 ############################################################################### |