Mail-BIMI
view release on metacpan or search on metacpan
#!perl
use 5.20.0;
use strict;
use warnings FATAL => 'all';
no warnings 'once';
BEGIN { $ENV{MAIL_BIMI_CACHE_BACKEND} = 'Null' };
use lib 't';
use Test::RequiresInternet;
use Test::More;
use Test::Differences;
use Encode qw{encode};
use Mail::BIMI::Prelude;
use Mail::BIMI::App;
use App::Cmd::Tester;
use File::Slurp qw{ read_file write_file };
use Net::DNS::Resolver::Mock;
unless ($ENV{AUTHOR_TESTS}) {
plan(skip_all => 'CMD Output tests skipped');
}
my $write_data = $ENV{MAIL_BIMI_TEST_WRITE_DATA} // 0; # Set to 1 to write new test data, then check it and commit
my $resolver = Net::DNS::Resolver::Mock->new;
$resolver->zonefile_read('t/zonefile');
$Mail::BIMI::TestSuite::Resolver = $resolver;
#subtest 'Bare' => sub {
#
# subtest 'Bare' => sub{
# my $file = 'app-bare';
# my $result = test_app(Mail::BIMI::App->new => [ qw{ } ]);
# do_tests($result,$file);
# };
#
# subtest 'Help' => sub{
# my $file = 'app-bare-help';
# my $result = test_app(Mail::BIMI::App->new => [ qw{ --help } ]);
# do_tests($result,$file);
# };
#
#};
subtest 'checkdomain' => sub {
subtest 'Help' => sub{
my $file = 'app-checkdomain-help';
my $result = test_app(Mail::BIMI::App->new => [ qw{ checkdomain --help } ]);
do_tests($result,$file);
};
subtest 'No Domain' => sub{
my $file = 'app-checkdomain-nodomain';
my $result = test_app(Mail::BIMI::App->new => [ qw{ checkdomain } ]);
do_tests($result,$file);
};
subtest 'Has Domain' => sub{
my $file = 'app-checkdomain-fastmaildmarc';
my $result = test_app(Mail::BIMI::App->new => [ qw{ checkdomain fastmaildmarc.com } ]);
do_tests($result,$file);
};
subtest 'Multi Domain' => sub{
my $file = 'app-checkdomain-multi';
my $result = test_app(Mail::BIMI::App->new => [ qw{ checkdomain fastmaildmarc.com fastmail.com } ]);
do_tests($result,$file);
};
subtest 'SVG Profile (Tiny 1.2)' => sub{
( run in 3.129 seconds using v1.01-cache-2.11-cpan-98e64b0badf )