#!perl
use 5.008;
use strict;
use warnings FATAL => 'all';
use lib 't';
use Test::More;
use Test::Exception;
use lib 'lib';
use Mail::AuthenticationResults::Parser;
my $Parsed;
my @GoodStrings = (
'test.example.com foo;',
'test.example.com foo ',
'test.example.com; foo = ',
);
my @BadStrings = (
'test.example.com = = test;',
'test.example.com foo = = bar;',
'test.example.com . bar = test;',
'test.example.com foo . bar = test;',
'test.example.com foo / bar = test;',
'test.example.com foo bar = test;',
'test.example.com; foo = = bar;',
'test.example.com; foo / bar = test;',
'test.example.com; foo . . bar = test;',
'test.example.com; foo / . bar = test;',
'test.example.com; foo . / bar = test;',
);
foreach my $String ( @GoodStrings ) {
lives_ok( sub{ $Parsed = Mail::AuthenticationResults::Parser->new()->parse( $String ) }, $String );
}
foreach my $String ( @BadStrings ) {
dies_ok( sub{ $Parsed = Mail::AuthenticationResults::Parser->new()->parse( $String ) }, $String );
}
done_testing();