[PATCH] Tests: added has_feature() test for CryptX
Maxim Dounin
mdounin at mdounin.ru
Fri May 26 16:12:42 UTC 2023
Hello!
On Thu, May 25, 2023 at 07:30:27PM +0400, Sergey Kandaurov wrote:
> # HG changeset patch
> # User Sergey Kandaurov <pluknet at nginx.com>
> # Date 1685028552 -14400
> # Thu May 25 19:29:12 2023 +0400
> # Node ID 4dad7cf8ebe807f9230a82dde5fc02b5e12e390b
> # Parent acd68670b0649da2fbcfd3e8231c9805d50abcb5
> Tests: added has_feature() test for CryptX.
>
> diff --git a/h3_absolute_redirect.t b/h3_absolute_redirect.t
> --- a/h3_absolute_redirect.t
> +++ b/h3_absolute_redirect.t
> @@ -23,10 +23,7 @@ use Test::Nginx::HTTP3;
> select STDERR; $| = 1;
> select STDOUT; $| = 1;
>
> -eval { require Crypt::Misc; die if $Crypt::Misc::VERSION < 0.067; };
> -plan(skip_all => 'CryptX version >= 0.067 required') if $@;
> -
> -my $t = Test::Nginx->new()->has(qw/http http_v3 proxy rewrite/)
> +my $t = Test::Nginx->new()->has(qw/http http_v3 proxy rewrite cryptx/)
> ->has_daemon('openssl')->plan(23);
>
> $t->write_file_expand('nginx.conf', <<'EOF');
> diff --git a/h3_headers.t b/h3_headers.t
> --- a/h3_headers.t
> +++ b/h3_headers.t
> @@ -23,10 +23,7 @@ use Test::Nginx::HTTP3;
> select STDERR; $| = 1;
> select STDOUT; $| = 1;
>
> -eval { require Crypt::Misc; die if $Crypt::Misc::VERSION < 0.067; };
> -plan(skip_all => 'CryptX version >= 0.067 required') if $@;
> -
> -my $t = Test::Nginx->new()->has(qw/http http_v3 proxy rewrite/)
> +my $t = Test::Nginx->new()->has(qw/http http_v3 proxy rewrite cryptx/)
> ->has_daemon('openssl')->plan(68)
> ->write_file_expand('nginx.conf', <<'EOF');
>
> diff --git a/h3_keepalive.t b/h3_keepalive.t
> --- a/h3_keepalive.t
> +++ b/h3_keepalive.t
> @@ -23,10 +23,7 @@ use Test::Nginx::HTTP3;
> select STDERR; $| = 1;
> select STDOUT; $| = 1;
>
> -eval { require Crypt::Misc; die if $Crypt::Misc::VERSION < 0.067; };
> -plan(skip_all => 'CryptX version >= 0.067 required') if $@;
> -
> -my $t = Test::Nginx->new()->has(qw/http http_v3/)
> +my $t = Test::Nginx->new()->has(qw/http http_v3 cryptx/)
> ->has_daemon('openssl')->plan(15)
> ->write_file_expand('nginx.conf', <<'EOF');
>
> diff --git a/h3_limit_conn.t b/h3_limit_conn.t
> --- a/h3_limit_conn.t
> +++ b/h3_limit_conn.t
> @@ -23,10 +23,7 @@ use Test::Nginx::HTTP3;
> select STDERR; $| = 1;
> select STDOUT; $| = 1;
>
> -eval { require Crypt::Misc; die if $Crypt::Misc::VERSION < 0.067; };
> -plan(skip_all => 'CryptX version >= 0.067 required') if $@;
> -
> -my $t = Test::Nginx->new()->has(qw/http http_v3 limit_conn proxy/)
> +my $t = Test::Nginx->new()->has(qw/http http_v3 limit_conn proxy cryptx/)
> ->has_daemon('openssl')->plan(2);
>
> $t->write_file_expand('nginx.conf', <<'EOF');
> diff --git a/h3_limit_req.t b/h3_limit_req.t
> --- a/h3_limit_req.t
> +++ b/h3_limit_req.t
> @@ -23,10 +23,7 @@ use Test::Nginx::HTTP3;
> select STDERR; $| = 1;
> select STDOUT; $| = 1;
>
> -eval { require Crypt::Misc; die if $Crypt::Misc::VERSION < 0.067; };
> -plan(skip_all => 'CryptX version >= 0.067 required') if $@;
> -
> -my $t = Test::Nginx->new()->has(qw/http http_v3 proxy limit_req/)
> +my $t = Test::Nginx->new()->has(qw/http http_v3 proxy limit_req cryptx/)
> ->has_daemon('openssl')->plan(6);
>
> $t->write_file_expand('nginx.conf', <<'EOF');
> diff --git a/h3_proxy.t b/h3_proxy.t
> --- a/h3_proxy.t
> +++ b/h3_proxy.t
> @@ -23,10 +23,7 @@ use Test::Nginx::HTTP3;
> select STDERR; $| = 1;
> select STDOUT; $| = 1;
>
> -eval { require Crypt::Misc; die if $Crypt::Misc::VERSION < 0.067; };
> -plan(skip_all => 'CryptX version >= 0.067 required') if $@;
> -
> -my $t = Test::Nginx->new()->has(qw/http http_v3 proxy/)
> +my $t = Test::Nginx->new()->has(qw/http http_v3 proxy cryptx/)
> ->has_daemon('openssl')->plan(3)
> ->write_file_expand('nginx.conf', <<'EOF');
>
> diff --git a/h3_proxy_max_temp_file_size.t b/h3_proxy_max_temp_file_size.t
> --- a/h3_proxy_max_temp_file_size.t
> +++ b/h3_proxy_max_temp_file_size.t
> @@ -23,10 +23,7 @@ use Test::Nginx::HTTP3;
> select STDERR; $| = 1;
> select STDOUT; $| = 1;
>
> -eval { require Crypt::Misc; die if $Crypt::Misc::VERSION < 0.067; };
> -plan(skip_all => 'CryptX version >= 0.067 required') if $@;
> -
> -my $t = Test::Nginx->new()->has(qw/http http_v3 proxy/)
> +my $t = Test::Nginx->new()->has(qw/http http_v3 proxy cryptx/)
> ->has_daemon('openssl')->plan(4);
>
> $t->write_file_expand('nginx.conf', <<'EOF');
> diff --git a/h3_reusable.t b/h3_reusable.t
> --- a/h3_reusable.t
> +++ b/h3_reusable.t
> @@ -23,10 +23,7 @@ use Test::Nginx::HTTP3;
> select STDERR; $| = 1;
> select STDOUT; $| = 1;
>
> -eval { require Crypt::Misc; die if $Crypt::Misc::VERSION < 0.067; };
> -plan(skip_all => 'CryptX version >= 0.067 required') if $@;
> -
> -my $t = Test::Nginx->new()->has(qw/http http_v3/)
> +my $t = Test::Nginx->new()->has(qw/http http_v3 cryptx/)
> ->has_daemon('openssl')->plan(1)
> ->write_file_expand('nginx.conf', <<'EOF');
>
> diff --git a/h3_server_name.t b/h3_server_name.t
> --- a/h3_server_name.t
> +++ b/h3_server_name.t
> @@ -24,11 +24,8 @@ use Test::Nginx::HTTP3;
> select STDERR; $| = 1;
> select STDOUT; $| = 1;
>
> -eval { require Crypt::Misc; die if $Crypt::Misc::VERSION < 0.067; };
> -plan(skip_all => 'CryptX version >= 0.067 required') if $@;
> -
> my $t = Test::Nginx->new()
> - ->has(qw/http http_ssl http_v2 http_v3 rewrite socket_ssl_alpn/)
> + ->has(qw/http http_ssl http_v2 http_v3 rewrite socket_ssl_alpn cryptx/)
> ->has_daemon('openssl')->plan(6);
>
> $t->write_file_expand('nginx.conf', <<'EOF');
> diff --git a/h3_server_tokens.t b/h3_server_tokens.t
> --- a/h3_server_tokens.t
> +++ b/h3_server_tokens.t
> @@ -23,10 +23,7 @@ use Test::Nginx::HTTP3;
> select STDERR; $| = 1;
> select STDOUT; $| = 1;
>
> -eval { require Crypt::Misc; die if $Crypt::Misc::VERSION < 0.067; };
> -plan(skip_all => 'CryptX version >= 0.067 required') if $@;
> -
> -my $t = Test::Nginx->new()->has(qw/http http_v3 rewrite/)
> +my $t = Test::Nginx->new()->has(qw/http http_v3 rewrite cryptx/)
> ->has_daemon('openssl')->plan(12);
>
> $t->write_file_expand('nginx.conf', <<'EOF');
> diff --git a/h3_ssl_reject_handshake.t b/h3_ssl_reject_handshake.t
> --- a/h3_ssl_reject_handshake.t
> +++ b/h3_ssl_reject_handshake.t
> @@ -23,10 +23,7 @@ use Test::Nginx::HTTP3;
> select STDERR; $| = 1;
> select STDOUT; $| = 1;
>
> -eval { require Crypt::Misc; die if $Crypt::Misc::VERSION < 0.067; };
> -plan(skip_all => 'CryptX version >= 0.067 required') if $@;
> -
> -my $t = Test::Nginx->new()->has(qw/http http_v3/)
> +my $t = Test::Nginx->new()->has(qw/http http_v3 cryptx/)
> ->has_daemon('openssl')->plan(7)
> ->write_file_expand('nginx.conf', <<'EOF');
>
> diff --git a/h3_ssl_session_reuse.t b/h3_ssl_session_reuse.t
> --- a/h3_ssl_session_reuse.t
> +++ b/h3_ssl_session_reuse.t
> @@ -23,10 +23,7 @@ use Test::Nginx::HTTP3;
> select STDERR; $| = 1;
> select STDOUT; $| = 1;
>
> -eval { require Crypt::Misc; die if $Crypt::Misc::VERSION < 0.067; };
> -plan(skip_all => 'CryptX version >= 0.067 required') if $@;
> -
> -my $t = Test::Nginx->new()->has(qw/http http_v3/)
> +my $t = Test::Nginx->new()->has(qw/http http_v3 cryptx/)
> ->has_daemon('openssl')->plan(8)
> ->write_file_expand('nginx.conf', <<'EOF');
>
> diff --git a/h3_trailers.t b/h3_trailers.t
> --- a/h3_trailers.t
> +++ b/h3_trailers.t
> @@ -23,10 +23,7 @@ use Test::Nginx::HTTP3;
> select STDERR; $| = 1;
> select STDOUT; $| = 1;
>
> -eval { require Crypt::Misc; die if $Crypt::Misc::VERSION < 0.067; };
> -plan(skip_all => 'CryptX version >= 0.067 required') if $@;
> -
> -my $t = Test::Nginx->new()->has(qw/http http_v3/)
> +my $t = Test::Nginx->new()->has(qw/http http_v3 cryptx/)
> ->has_daemon('openssl')->plan(8);
>
> $t->write_file_expand('nginx.conf', <<'EOF');
> diff --git a/lib/Test/Nginx.pm b/lib/Test/Nginx.pm
> --- a/lib/Test/Nginx.pm
> +++ b/lib/Test/Nginx.pm
> @@ -288,6 +288,13 @@ sub has_feature($) {
> return 1;
> }
>
> + if ($feature eq 'cryptx') {
> + eval { require Crypt::Misc; };
> + return 0 if $@;
> + eval { die if $Crypt::Misc::VERSION < 0.067; };
> + return !$@;
> + }
> +
> return 0;
> }
>
> diff --git a/quic_migration.t b/quic_migration.t
> --- a/quic_migration.t
> +++ b/quic_migration.t
> @@ -23,13 +23,10 @@ use Test::Nginx::HTTP3;
> select STDERR; $| = 1;
> select STDOUT; $| = 1;
>
> -eval { require Crypt::Misc; die if $Crypt::Misc::VERSION < 0.067; };
> -plan(skip_all => 'CryptX version >= 0.067 required') if $@;
> -
> plan(skip_all => '127.0.0.20 local address required')
> unless defined IO::Socket::INET->new( LocalAddr => '127.0.0.20' );
>
> -my $t = Test::Nginx->new()->has(qw/http http_v3/)
> +my $t = Test::Nginx->new()->has(qw/http http_v3 cryptx/)
> ->has_daemon('openssl')->plan(2);
>
> $t->write_file_expand('nginx.conf', <<'EOF');
Looks good.
--
Maxim Dounin
http://mdounin.ru/
More information about the nginx-devel
mailing list