Mercurial > hg > nginx-tests
diff stream_js.t @ 1811:520fb74cce4c
Tests: improved njs version check to account multi digit versions.
author | Dmitry Volyntsev <xeioex@nginx.com> |
---|---|
date | Fri, 02 Dec 2022 17:46:22 -0800 |
parents | 18ac4d9e5a2a |
children |
line wrap: on
line diff
--- a/stream_js.t +++ b/stream_js.t @@ -416,8 +416,7 @@ stream('127.0.0.1:' . port(8098))->io('x stream('127.0.0.1:' . port(8099))->io('x'); TODO: { -local $TODO = 'not yet' - unless get('/njs') =~ /^([.0-9]+)$/m && $1 ge '0.7.0'; +local $TODO = 'not yet' unless has_version('0.7.0'); is(stream('127.0.0.1:' . port(8100))->read(), 'retval: 30', 'asyncf'); @@ -438,6 +437,25 @@ like($t->read_file('status.log'), qr/$p[ ############################################################################### +sub has_version { + my $need = shift; + + get('/njs') =~ /^([.0-9]+)$/m; + + my @v = split(/\./, $1); + my ($n, $v); + + for $n (split(/\./, $need)) { + $v = shift @v || 0; + return 0 if $n > $v; + return 1 if $v > $n; + } + + return 1; +} + +############################################################################### + sub stream_daemon { my $server = IO::Socket::INET->new( Proto => 'tcp',