Mercurial > hg > nginx-tests
comparison stream_js.t @ 1373:0569baf0cc4a
Tests: style.
author | Dmitry Volyntsev <xeioex@nginx.com> |
---|---|
date | Tue, 11 Sep 2018 14:45:22 +0300 |
parents | 890516ca898a |
children | fd7766ab0a69 |
comparison
equal
deleted
inserted
replaced
1372:4c0ea623343a | 1373:0569baf0cc4a |
---|---|
38 js_set $js_var js_var; | 38 js_set $js_var js_var; |
39 js_set $js_log js_log; | 39 js_set $js_log js_log; |
40 js_set $js_unk js_unk; | 40 js_set $js_unk js_unk; |
41 js_set $js_sess_unk js_sess_unk; | 41 js_set $js_sess_unk js_sess_unk; |
42 | 42 |
43 js_include functions.js; | 43 js_include test.js; |
44 | 44 |
45 server { | 45 server { |
46 listen 127.0.0.1:8080; | 46 listen 127.0.0.1:8080; |
47 return $js_addr; | 47 return $js_addr; |
48 } | 48 } |
117 } | 117 } |
118 } | 118 } |
119 | 119 |
120 EOF | 120 EOF |
121 | 121 |
122 $t->write_file('functions.js', <<EOF); | 122 $t->write_file('test.js', <<EOF); |
123 function js_addr(sess) { | 123 function js_addr(s) { |
124 return 'addr=' + sess.remoteAddress; | 124 return 'addr=' + s.remoteAddress; |
125 } | 125 } |
126 | 126 |
127 function js_var(sess) { | 127 function js_var(s) { |
128 return 'variable=' + sess.variables.remote_addr; | 128 return 'variable=' + s.variables.remote_addr; |
129 } | 129 } |
130 | 130 |
131 function js_sess_unk(sess) { | 131 function js_sess_unk(s) { |
132 return 'sess_unk=' + sess.unk; | 132 return 'sess_unk=' + s.unk; |
133 } | 133 } |
134 | 134 |
135 function js_log(sess) { | 135 function js_log(s) { |
136 sess.log("SEE-THIS"); | 136 s.log("SEE-THIS"); |
137 } | 137 } |
138 | 138 |
139 function js_access_allow(sess) { | 139 function js_access_allow(s) { |
140 if (sess.remoteAddress.match('127.0.0.1')) { | 140 if (s.remoteAddress.match('127.0.0.1')) { |
141 return sess.OK; | 141 return s.OK; |
142 } | 142 } |
143 } | 143 } |
144 | 144 |
145 function js_access_deny(sess) { | 145 function js_access_deny(s) { |
146 if (sess.remoteAddress.match('127.0.0.1')) { | 146 if (s.remoteAddress.match('127.0.0.1')) { |
147 return sess.ABORT; | 147 return s.ABORT; |
148 } | 148 } |
149 } | 149 } |
150 | 150 |
151 function js_preread(sess) { | 151 function js_preread(s) { |
152 var n = sess.buffer.indexOf('z'); | 152 var n = s.buffer.indexOf('z'); |
153 if (n == -1) { | 153 if (n == -1) { |
154 return sess.AGAIN; | 154 return s.AGAIN; |
155 } | 155 } |
156 } | 156 } |
157 | 157 |
158 function js_filter(sess) { | 158 function js_filter(s) { |
159 if (sess.fromUpstream) { | 159 if (s.fromUpstream) { |
160 var n = sess.buffer.search('y'); | 160 var n = s.buffer.search('y'); |
161 if (n != -1) { | 161 if (n != -1) { |
162 sess.buffer = 'z'; | 162 s.buffer = 'z'; |
163 } | 163 } |
164 return; | 164 return; |
165 } | 165 } |
166 | 166 |
167 n = sess.buffer.search('x'); | 167 n = s.buffer.search('x'); |
168 if (n != -1) { | 168 if (n != -1) { |
169 sess.buffer = 'y'; | 169 s.buffer = 'y'; |
170 } | 170 } |
171 } | 171 } |
172 | 172 |
173 var res = ''; | 173 var res = ''; |
174 function js_access_step(sess) { | 174 function js_access_step(s) { |
175 res += '1'; | 175 res += '1'; |
176 } | 176 } |
177 | 177 |
178 function js_preread_step(sess) { | 178 function js_preread_step(s) { |
179 res += '2'; | 179 res += '2'; |
180 } | 180 } |
181 | 181 |
182 function js_filter_step(sess) { | 182 function js_filter_step(s) { |
183 if (sess.eof) { | 183 if (s.eof) { |
184 sess.buffer = res; | 184 s.buffer = res; |
185 return; | 185 return; |
186 } | 186 } |
187 res += '3'; | 187 res += '3'; |
188 } | 188 } |
189 | 189 |
190 function js_preread_except(sess) { | 190 function js_preread_except(s) { |
191 var fs = require('fs'); | 191 var fs = require('fs'); |
192 fs.readFileSync(); | 192 fs.readFileSync(); |
193 } | 193 } |
194 | 194 |
195 function js_filter_except(sess) { | 195 function js_filter_except(s) { |
196 sess.a.a; | 196 s.a.a; |
197 } | 197 } |
198 | 198 |
199 EOF | 199 EOF |
200 | 200 |
201 $t->run_daemon(\&stream_daemon, port(8090)); | 201 $t->run_daemon(\&stream_daemon, port(8090)); |
203 $t->waitforsocket('127.0.0.1:' . port(8090)); | 203 $t->waitforsocket('127.0.0.1:' . port(8090)); |
204 | 204 |
205 ############################################################################### | 205 ############################################################################### |
206 | 206 |
207 is(stream('127.0.0.1:' . port(8080))->read(), 'addr=127.0.0.1', | 207 is(stream('127.0.0.1:' . port(8080))->read(), 'addr=127.0.0.1', |
208 'sess.remoteAddress'); | 208 's.remoteAddress'); |
209 is(dgram('127.0.0.1:' . port(8985))->io('.'), 'addr=127.0.0.1', | 209 is(dgram('127.0.0.1:' . port(8985))->io('.'), 'addr=127.0.0.1', |
210 'sess.remoteAddress udp'); | 210 's.remoteAddress udp'); |
211 is(stream('127.0.0.1:' . port(8081))->read(), 'undefined', 'sess.log'); | 211 is(stream('127.0.0.1:' . port(8081))->read(), 'undefined', 's.log'); |
212 is(stream('127.0.0.1:' . port(8082))->read(), 'variable=127.0.0.1', | 212 is(stream('127.0.0.1:' . port(8082))->read(), 'variable=127.0.0.1', |
213 'sess.variables'); | 213 's.variables'); |
214 is(stream('127.0.0.1:' . port(8083))->read(), '', 'stream js unknown function'); | 214 is(stream('127.0.0.1:' . port(8083))->read(), '', 'stream js unknown function'); |
215 is(stream('127.0.0.1:' . port(8084))->read(), 'sess_unk=undefined', 'sess.unk'); | 215 is(stream('127.0.0.1:' . port(8084))->read(), 'sess_unk=undefined', 's.unk'); |
216 | |
216 is(stream('127.0.0.1:' . port(8086))->read(), 'OK', 'js_access allow'); | 217 is(stream('127.0.0.1:' . port(8086))->read(), 'OK', 'js_access allow'); |
217 is(stream('127.0.0.1:' . port(8087))->read(), '', 'js_access deny'); | 218 is(stream('127.0.0.1:' . port(8087))->read(), '', 'js_access deny'); |
218 is(stream('127.0.0.1:' . port(8088))->io('xyz'), 'xyz', 'js_preread'); | 219 is(stream('127.0.0.1:' . port(8088))->io('xyz'), 'xyz', 'js_preread'); |
219 is(stream('127.0.0.1:' . port(8089))->io('x'), 'z', 'js_filter'); | 220 is(stream('127.0.0.1:' . port(8089))->io('x'), 'z', 'js_filter'); |
220 is(stream('127.0.0.1:' . port(8091))->io('0'), '01233', 'handlers order'); | 221 is(stream('127.0.0.1:' . port(8091))->io('0'), '01233', 'handlers order'); |
222 | |
221 stream('127.0.0.1:' . port(8092))->io('x'); | 223 stream('127.0.0.1:' . port(8092))->io('x'); |
222 stream('127.0.0.1:' . port(8093))->io('x'); | 224 stream('127.0.0.1:' . port(8093))->io('x'); |
223 | 225 |
224 $t->stop(); | 226 $t->stop(); |
225 | 227 |