tests: Refine module loads
* Wrap all conditional loads in `BEGIN {}` to be closer to the behavior of `use`. * Add missing `Test::Warnings`, `HTTP::Request` loads. * Sort by module name, except load `Test::More` first and `Test::Warnings` immediately after to maximize checking effectiveness. * Return truthy from `eval` block to prevent the `or` case from executing if the loaded module does not have a final truthy statement. (Except for `ddclient` because we want to test that it does have a final truthy statement.)
This commit is contained in:
parent
dd7ad1ccf4
commit
9c7c0e55c1
12 changed files with 40 additions and 43 deletions
|
@ -1,6 +1,6 @@
|
||||||
use Test::More;
|
use Test::More;
|
||||||
SKIP: { eval { require Test::Warnings; } or skip($@, 1); }
|
BEGIN { SKIP: { eval { require Test::Warnings; 1; } or skip($@, 1); } }
|
||||||
eval { require 'ddclient'; } or BAIL_OUT($@);
|
BEGIN { eval { require 'ddclient'; } or BAIL_OUT($@); }
|
||||||
|
|
||||||
my $got_host;
|
my $got_host;
|
||||||
my $builtinfw = 't/builtinfw_query.pl';
|
my $builtinfw = 't/builtinfw_query.pl';
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
use Test::More;
|
use Test::More;
|
||||||
|
BEGIN { SKIP: { eval { require Test::Warnings; 1; } or skip($@, 1); } }
|
||||||
|
BEGIN { eval { require 'ddclient'; } or BAIL_OUT($@); }
|
||||||
use ddclient::t;
|
use ddclient::t;
|
||||||
SKIP: { eval { require Test::Warnings; } or skip($@, 1); }
|
|
||||||
eval { require 'ddclient'; } or BAIL_OUT($@);
|
|
||||||
|
|
||||||
subtest "get_default_interface tests" => sub {
|
subtest "get_default_interface tests" => sub {
|
||||||
for my $sample (@ddclient::t::routing_samples) {
|
for my $sample (@ddclient::t::routing_samples) {
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
use Test::More;
|
use Test::More;
|
||||||
eval { require ddclient::Test::Fake::HTTPD; } or plan(skip_all => $@);
|
BEGIN { SKIP: { eval { require Test::Warnings; 1; } or skip($@, 1); } }
|
||||||
SKIP: { eval { require Test::Warnings; } or skip($@, 1); }
|
BEGIN { eval { require 'ddclient'; } or BAIL_OUT($@); }
|
||||||
eval { require 'ddclient'; } or BAIL_OUT($@);
|
BEGIN { eval { require ddclient::Test::Fake::HTTPD; 1; } or plan(skip_all => $@); }
|
||||||
my $has_http_daemon_ssl = eval { require HTTP::Daemon::SSL; };
|
my $has_http_daemon_ssl = eval { require HTTP::Daemon::SSL; 1; };
|
||||||
my $ipv6_supported = eval {
|
my $ipv6_supported = eval {
|
||||||
require IO::Socket::IP;
|
require IO::Socket::IP;
|
||||||
my $ipv6_socket = IO::Socket::IP->new(
|
my $ipv6_socket = IO::Socket::IP->new(
|
||||||
|
|
|
@ -1,9 +1,8 @@
|
||||||
use Test::More;
|
use Test::More;
|
||||||
eval { require JSON::PP; } or plan(skip_all => $@);
|
BEGIN { SKIP: { eval { require Test::Warnings; 1; } or skip($@, 1); } }
|
||||||
JSON::PP->import(qw(encode_json));
|
BEGIN { eval { require JSON::PP; 1; } or plan(skip_all => $@); JSON::PP->import(); }
|
||||||
eval { require ddclient::Test::Fake::HTTPD; } or plan(skip_all => $@);
|
BEGIN { eval { require 'ddclient'; } or BAIL_OUT($@); }
|
||||||
SKIP: { eval { require Test::Warnings; } or skip($@, 1); }
|
BEGIN { eval { require ddclient::Test::Fake::HTTPD; 1; } or plan(skip_all => $@); }
|
||||||
eval { require 'ddclient'; } or BAIL_OUT($@);
|
|
||||||
|
|
||||||
ddclient::load_json_support('directnic');
|
ddclient::load_json_support('directnic');
|
||||||
|
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
use Test::More;
|
use Test::More;
|
||||||
eval { require JSON::PP; } or plan(skip_all => $@);
|
BEGIN { SKIP: { eval { require Test::Warnings; 1; } or skip($@, 1); } }
|
||||||
JSON::PP->import(qw(encode_json decode_json));
|
BEGIN { eval { require JSON::PP; 1; } or plan(skip_all => $@); JSON::PP->import(); }
|
||||||
eval { require 'ddclient'; } or BAIL_OUT($@);
|
BEGIN { eval { require LWP::UserAgent; 1; } or plan(skip_all => $@); }
|
||||||
eval { require ddclient::Test::Fake::HTTPD; } or plan(skip_all => $@);
|
BEGIN { eval { require 'ddclient'; } or BAIL_OUT($@); }
|
||||||
eval { require LWP::UserAgent; } or plan(skip_all => $@);
|
BEGIN { eval { require ddclient::Test::Fake::HTTPD; 1; } or plan(skip_all => $@); }
|
||||||
|
|
||||||
ddclient::load_json_support('dnsexit2');
|
ddclient::load_json_support('dnsexit2');
|
||||||
|
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
use Test::More;
|
use Test::More;
|
||||||
use Scalar::Util qw(blessed);
|
BEGIN { SKIP: { eval { require Test::Warnings; 1; } or skip($@, 1); } }
|
||||||
use MIME::Base64;
|
use MIME::Base64;
|
||||||
eval { require ddclient::Test::Fake::HTTPD; } or plan(skip_all => $@);
|
use Scalar::Util qw(blessed);
|
||||||
SKIP: { eval { require Test::Warnings; } or skip($@, 1); }
|
BEGIN { eval { require 'ddclient'; } or BAIL_OUT($@); }
|
||||||
eval { require 'ddclient'; } or BAIL_OUT($@);
|
BEGIN { eval { require ddclient::Test::Fake::HTTPD; 1; } or plan(skip_all => $@); }
|
||||||
|
|
||||||
my $httpd = ddclient::Test::Fake::HTTPD->new();
|
my $httpd = ddclient::Test::Fake::HTTPD->new();
|
||||||
$httpd->run(sub {
|
$httpd->run(sub {
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
use Test::More;
|
use Test::More;
|
||||||
|
BEGIN { SKIP: { eval { require Test::Warnings; 1; } or skip($@, 1); } }
|
||||||
use File::Temp;
|
use File::Temp;
|
||||||
SKIP: { eval { require Test::Warnings; } or skip($@, 1); }
|
BEGIN { eval { require 'ddclient'; } or BAIL_OUT($@); }
|
||||||
eval { require 'ddclient'; } or BAIL_OUT($@);
|
|
||||||
|
|
||||||
local $ddclient::globals{debug} = 1;
|
local $ddclient::globals{debug} = 1;
|
||||||
local $ddclient::globals{verbose} = 1;
|
local $ddclient::globals{verbose} = 1;
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
use Test::More;
|
use Test::More;
|
||||||
eval { require ddclient::Test::Fake::HTTPD; } or plan(skip_all => $@);
|
BEGIN { SKIP: { eval { require Test::Warnings; 1; } or skip($@, 1); } }
|
||||||
SKIP: { eval { require Test::Warnings; } or skip($@, 1); }
|
BEGIN { eval { require 'ddclient'; } or BAIL_OUT($@); }
|
||||||
eval { require 'ddclient'; } or BAIL_OUT($@);
|
BEGIN { eval { require ddclient::Test::Fake::HTTPD; 1; } or plan(skip_all => $@); }
|
||||||
my $ipv6_supported = eval {
|
my $ipv6_supported = eval {
|
||||||
require IO::Socket::IP;
|
require IO::Socket::IP;
|
||||||
my $ipv6_socket = IO::Socket::IP->new(
|
my $ipv6_socket = IO::Socket::IP->new(
|
||||||
|
|
|
@ -1,10 +1,8 @@
|
||||||
use Test::More;
|
use Test::More;
|
||||||
eval {
|
BEGIN { SKIP: { eval { require Test::Warnings; 1; } or skip($@, 1); } }
|
||||||
require ddclient::Test::Fake::HTTPD;
|
BEGIN { eval { require HTTP::Daemon::SSL; 1; } or plan(skip_all => $@); }
|
||||||
require HTTP::Daemon::SSL;
|
BEGIN { eval { require 'ddclient'; } or BAIL_OUT($@); }
|
||||||
} or plan(skip_all => $@);
|
BEGIN { eval { require ddclient::Test::Fake::HTTPD; 1; } or plan(skip_all => $@); }
|
||||||
SKIP: { eval { require Test::Warnings; } or skip($@, 1); }
|
|
||||||
eval { require 'ddclient'; } or BAIL_OUT($@);
|
|
||||||
my $ipv6_supported = eval {
|
my $ipv6_supported = eval {
|
||||||
require IO::Socket::IP;
|
require IO::Socket::IP;
|
||||||
my $ipv6_socket = IO::Socket::IP->new(
|
my $ipv6_socket = IO::Socket::IP->new(
|
||||||
|
|
|
@ -1,12 +1,12 @@
|
||||||
use Test::More;
|
use Test::More;
|
||||||
|
BEGIN { SKIP: { eval { require Test::Warnings; 1; } or skip($@, 1); } }
|
||||||
use File::Temp;
|
use File::Temp;
|
||||||
|
BEGIN { eval { require HTTP::Request; 1; } or plan(skip_all => $@); }
|
||||||
|
BEGIN { eval { require JSON::PP; 1; } or plan(skip_all => $@); JSON::PP->import(); }
|
||||||
use List::Util qw(max);
|
use List::Util qw(max);
|
||||||
use Scalar::Util qw(refaddr);
|
use Scalar::Util qw(refaddr);
|
||||||
eval { require JSON::PP; } or plan(skip_all => $@);
|
BEGIN { eval { require 'ddclient'; } or BAIL_OUT($@); }
|
||||||
JSON::PP->import(qw(decode_json encode_json));
|
BEGIN { eval { require ddclient::Test::Fake::HTTPD; 1; } or plan(skip_all => $@); }
|
||||||
eval { require ddclient::Test::Fake::HTTPD; } or plan(skip_all => $@);
|
|
||||||
SKIP: { eval { require Test::Warnings; } or skip($@, 1); }
|
|
||||||
eval { require 'ddclient'; } or BAIL_OUT($@);
|
|
||||||
my $ipv6_supported = eval {
|
my $ipv6_supported = eval {
|
||||||
require IO::Socket::IP;
|
require IO::Socket::IP;
|
||||||
my $ipv6_socket = IO::Socket::IP->new(
|
my $ipv6_socket = IO::Socket::IP->new(
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
use Test::More;
|
use Test::More;
|
||||||
|
BEGIN { SKIP: { eval { require Test::Warnings; 1; } or skip($@, 1); } }
|
||||||
use Scalar::Util qw(blessed);
|
use Scalar::Util qw(blessed);
|
||||||
eval { require ddclient::Test::Fake::HTTPD; } or plan(skip_all => $@);
|
BEGIN { eval { require 'ddclient'; } or BAIL_OUT($@); }
|
||||||
SKIP: { eval { require Test::Warnings; } or skip($@, 1); }
|
BEGIN { eval { require ddclient::Test::Fake::HTTPD; 1; } or plan(skip_all => $@); }
|
||||||
eval { require 'ddclient'; } or BAIL_OUT($@);
|
|
||||||
my $ipv6_supported = eval {
|
my $ipv6_supported = eval {
|
||||||
require IO::Socket::IP;
|
require IO::Socket::IP;
|
||||||
my $ipv6_socket = IO::Socket::IP->new(
|
my $ipv6_socket = IO::Socket::IP->new(
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
use Test::More;
|
use Test::More;
|
||||||
|
BEGIN { SKIP: { eval { require Test::Warnings; 1; } or skip($@, 1); } }
|
||||||
|
BEGIN { eval { require 'ddclient'; } or BAIL_OUT($@); }
|
||||||
use re qw(is_regexp);
|
use re qw(is_regexp);
|
||||||
SKIP: { eval { require Test::Warnings; } or skip($@, 1); }
|
|
||||||
eval { require 'ddclient'; } or BAIL_OUT($@);
|
|
||||||
|
|
||||||
my %variable_collections = (
|
my %variable_collections = (
|
||||||
map({ ($_ => $ddclient::cfgvars{$_}) } grep($_ ne 'merged', keys(%ddclient::cfgvars))),
|
map({ ($_ => $ddclient::cfgvars{$_}) } grep($_ ne 'merged', keys(%ddclient::cfgvars))),
|
||||||
|
|
Loading…
Reference in a new issue