comparison stream_geo.t @ 1044:1fe8d33f75ad

Tests: split out geo tests with binary base and skip by default. These tests require configuration with a large number of geo entries, which may cause long configuration parsing and enrage waitforfile().
author Sergey Kandaurov <pluknet@nginx.com>
date Fri, 30 Sep 2016 20:31:09 +0300
parents 2cf72e8a1a6b
children 3fc6817cd84a
comparison
equal deleted inserted replaced
1043:b82f54728e14 1044:1fe8d33f75ad
159 ranges; 159 ranges;
160 default default; 160 default default;
161 127.0.0.0-127.0.0.255 test; 161 127.0.0.0-127.0.0.255 test;
162 127.0.0.1-127.0.0.255 loopback; 162 127.0.0.1-127.0.0.255 loopback;
163 } 163 }
164
165 geo $geo_base_create {
166 ranges;
167 include base.conf;
168 }
169
170 geo $geo_base_include {
171 ranges;
172 include base.conf;
173 }
174 164
175 server { 165 server {
176 listen 127.0.0.1:8080; 166 listen 127.0.0.1:8080;
177 return "geo:$geo 167 return "geo:$geo
178 geo_include:$geo_include 168 geo_include:$geo_include
182 geo_before:$geo_before 172 geo_before:$geo_before
183 geo_after:$geo_after 173 geo_after:$geo_after
184 geo_insert:$geo_insert 174 geo_insert:$geo_insert
185 geo_insert_before:$geo_insert_before 175 geo_insert_before:$geo_insert_before
186 geo_insert_after:$geo_insert_after 176 geo_insert_after:$geo_insert_after
187 geo_base_create:$geo_base_create
188 geo_base_include:$geo_base_include
189 geo_from_addr:$geo_from_addr 177 geo_from_addr:$geo_from_addr
190 geo_from_var:$geo_from_var"; 178 geo_from_var:$geo_from_var";
191 } 179 }
192 180
193 server { 181 server {
228 216
229 EOF 217 EOF
230 218
231 $t->write_file('geo.conf', '127.0.0.0/8 loopback;'); 219 $t->write_file('geo.conf', '127.0.0.0/8 loopback;');
232 $t->write_file('geo-ranges.conf', '127.0.0.0-127.255.255.255 loopback;'); 220 $t->write_file('geo-ranges.conf', '127.0.0.0-127.255.255.255 loopback;');
233 $t->write_file('base.conf', join('', map { 221
234 "127." . $_/256/256 % 256 . "." . $_/256 % 256 . "." . $_ % 256 . 222 $t->try_run('no stream geo')->plan(19);
235 "-127." . $_/256/256 % 256 . "." . $_/256 % 256 . "." .$_ % 256 . " " .
236 ($_ == 1 ? "loopback" : "range$_") . ";" } (0 .. 100000)));
237
238 $t->try_run('no stream geo')->plan(21);
239 223
240 ############################################################################### 224 ###############################################################################
241 225
242 my %data = stream()->read() =~ /(\w+):(\w+)/g; 226 my %data = stream()->read() =~ /(\w+):(\w+)/g;
243 is($data{geo}, 'loopback', 'geo'); 227 is($data{geo}, 'loopback', 'geo');
258 is($data{geo_before}, 'loopback', 'geo ranges add before'); 242 is($data{geo_before}, 'loopback', 'geo ranges add before');
259 is($data{geo_after}, 'loopback', 'geo ranges add after'); 243 is($data{geo_after}, 'loopback', 'geo ranges add after');
260 is($data{geo_insert}, 'loopback', 'geo ranges insert'); 244 is($data{geo_insert}, 'loopback', 'geo ranges insert');
261 is($data{geo_insert_before}, 'loopback', 'geo ranges insert before'); 245 is($data{geo_insert_before}, 'loopback', 'geo ranges insert before');
262 is($data{geo_insert_after}, 'loopback', 'geo ranges insert after'); 246 is($data{geo_insert_after}, 'loopback', 'geo ranges insert after');
263 is($data{geo_base_create}, 'loopback', 'geo binary base create');
264 is($data{geo_base_include}, 'loopback', 'geo binary base include');
265 247
266 is($data{geo_from_addr}, 'loopback', 'geo from addr'); 248 is($data{geo_from_addr}, 'loopback', 'geo from addr');
267 is($data{geo_from_var}, 'test', 'geo from var'); 249 is($data{geo_from_var}, 'test', 'geo from var');
268 250
269 TODO: { 251 TODO: {