Mercurial > hg > nginx-tests
diff h2_ssl_variables.t @ 1033:45c80276d691
Tests: unbreak for nginx built with OpenSSL without NPN/ALPN.
author | Sergey Kandaurov <pluknet@nginx.com> |
---|---|
date | Wed, 14 Sep 2016 19:38:13 +0300 |
parents | de513b115e68 |
children | 8ef51dbb5d69 |
line wrap: on
line diff
--- a/h2_ssl_variables.t +++ b/h2_ssl_variables.t @@ -93,11 +93,15 @@ open STDERR, ">&", \*OLDERR; my ($s, $sid, $frames, $frame); +my $has_npn = eval { Test::Nginx::HTTP2::new_socket(port(8080), SSL => 1, + npn => 'h2')->next_proto_negotiated() }; +my $has_alpn = eval { Test::Nginx::HTTP2::new_socket(port(8080), SSL => 1, + alpn => 'h2')->alpn_selected() }; + # SSL/TLS connection, NPN SKIP: { -eval { IO::Socket::SSL->can_npn() or die; }; -skip 'OpenSSL NPN support required', 1 if $@; +skip 'OpenSSL NPN support required', 1 unless $has_npn; $s = Test::Nginx::HTTP2->new(port(8080), SSL => 1, npn => 'h2'); $sid = $s->new_stream({ path => '/h2' }); @@ -111,8 +115,7 @@ is($frame->{data}, 'h2', 'http variable # SSL/TLS connection, ALPN SKIP: { -eval { IO::Socket::SSL->can_alpn() or die; }; -skip 'OpenSSL ALPN support required', 1 if $@; +skip 'OpenSSL ALPN support required', 1 unless $has_alpn; $s = Test::Nginx::HTTP2->new(port(8080), SSL => 1, alpn => 'h2'); $sid = $s->new_stream({ path => '/h2' }); @@ -126,8 +129,7 @@ is($frame->{data}, 'h2', 'http variable # $server_protocol - SSL/TLS connection, NPN SKIP: { -eval { IO::Socket::SSL->can_npn() or die; }; -skip 'OpenSSL NPN support required', 1 if $@; +skip 'OpenSSL NPN support required', 1 unless $has_npn; $s = Test::Nginx::HTTP2->new(port(8080), SSL => 1, npn => 'h2'); $sid = $s->new_stream({ path => '/sp' }); @@ -141,8 +143,7 @@ is($frame->{data}, 'HTTP/2.0', 'server_p # $server_protocol - SSL/TLS connection, ALPN SKIP: { -eval { IO::Socket::SSL->can_alpn() or die; }; -skip 'OpenSSL ALPN support required', 1 if $@; +skip 'OpenSSL ALPN support required', 1 unless $has_alpn; $s = Test::Nginx::HTTP2->new(port(8080), SSL => 1, alpn => 'h2'); $sid = $s->new_stream({ path => '/sp' }); @@ -156,8 +157,7 @@ is($frame->{data}, 'HTTP/2.0', 'server_p # $scheme - SSL/TLS connection, NPN SKIP: { -eval { IO::Socket::SSL->can_npn() or die; }; -skip 'OpenSSL NPN support required', 1 if $@; +skip 'OpenSSL NPN support required', 1 unless $has_npn; $s = Test::Nginx::HTTP2->new(port(8080), SSL => 1, npn => 'h2'); $sid = $s->new_stream({ path => '/scheme' }); @@ -171,8 +171,7 @@ is($frame->{data}, 'https', 'scheme vari # $scheme - SSL/TLS connection, ALPN SKIP: { -eval { IO::Socket::SSL->can_alpn() or die; }; -skip 'OpenSSL ALPN support required', 1 if $@; +skip 'OpenSSL ALPN support required', 1 unless $has_alpn; $s = Test::Nginx::HTTP2->new(port(8080), SSL => 1, alpn => 'h2'); $sid = $s->new_stream({ path => '/scheme' }); @@ -186,8 +185,7 @@ is($frame->{data}, 'https', 'scheme vari # $https - SSL/TLS connection, NPN SKIP: { -eval { IO::Socket::SSL->can_npn() or die; }; -skip 'OpenSSL NPN support required', 1 if $@; +skip 'OpenSSL NPN support required', 1 unless $has_npn; $s = Test::Nginx::HTTP2->new(port(8080), SSL => 1, npn => 'h2'); $sid = $s->new_stream({ path => '/https' }); @@ -201,8 +199,7 @@ is($frame->{data}, 'on', 'https variable # $https - SSL/TLS connection, ALPN SKIP: { -eval { IO::Socket::SSL->can_alpn() or die; }; -skip 'OpenSSL ALPN support required', 1 if $@; +skip 'OpenSSL ALPN support required', 1 unless $has_alpn; $s = Test::Nginx::HTTP2->new(port(8080), SSL => 1, alpn => 'h2'); $sid = $s->new_stream({ path => '/https' });