#!perl
use
5.20.0;
BEGIN {
$ENV
{MAIL_BIMI_CACHE_BACKEND} =
'Null'
};
my
$bimi
= Mail::BIMI->new();
my
$resolver
= Net::DNS::Resolver::Mock->new;
$resolver
->zonefile_read(
't/zonefile'
);
$bimi
->resolver(
$resolver
);
my
$dmarc
= Mail::DMARC::PurePerl->new;
$dmarc
->result->result(
'pass'
);
$dmarc
->result->disposition(
'reject'
);
$bimi
->dmarc_object(
$dmarc
->result );
$bimi
->domain(
'dnslookupcname.com'
);
$bimi
->selector(
'selector'
);
my
$record
=
$bimi
->record;
is_deeply(
[
$record
->is_valid,
$record
->error_codes ],
[ 1, [] ],
'Test record validates'
);
my
$expected_data
= {
'v'
=>
'bimi1'
};
is_deeply(
$record
->record_hashref,
$expected_data
,
'Parsed data'
);
is_deeply(
$record
->location->uri,
$expected_url
,
'URL'
);
my
$result
=
$bimi
->result;
my
$auth_results
=
$result
->get_authentication_results;
my
$expected_result
=
'bimi=pass header.d=dnslookupcname.com header.selector=selector'
;
is(
$auth_results
,
$expected_result
,
'Auth results correct'
);
done_testing;