Courriel
view release on metacpan or search on metacpan
t/Headers.t view on Meta::CPAN
use strict;
use warnings;
use utf8;
use Test::Differences;
use Test::Fatal;
use Test::More 0.88;
use Test::Warnings;
use Courriel::Builder;
use Courriel::Headers;
use Courriel::Helpers;
use Scalar::Util qw( blessed );
## no critic (InputOutput::RequireCheckedSyscalls)
binmode $_, ':encoding(UTF-8)'
for map { Test::Builder->new->$_ }
qw( output failure_output todo_output );
## use critic
my $crlf = $Courriel::Helpers::CRLF;
my $hola = "\x{00A1}Hola, se\x{00F1}or!";
{
my $h = Courriel::Headers->new;
is_deeply(
_headers_as_arrayref($h),
[],
'can make an empty headers object'
);
$h->add( Subject => 'Foo bar' );
is_deeply(
_headers_as_arrayref($h),
[ Subject => 'Foo bar' ],
'added Subject header'
);
is_deeply(
[ map { $_->value } $h->get('subject') ],
['Foo bar'],
'got subject header (name is case-insensitive)'
);
is_deeply(
[ $h->get_values('subject') ],
['Foo bar'],
'got subject header with get_values method'
);
is_deeply(
[ $h->get_values('no-such-header') ],
[],
'get_values returns empty list for nonexistent header'
);
$h->add( 'Content-Type' => 'text/plain' );
is_deeply(
_headers_as_arrayref($h),
[
Subject => 'Foo bar',
'Content-Type' => 'text/plain',
( run in 1.382 second using v1.01-cache-2.11-cpan-5a3173703d6 )