63 lines
1.5 KiB
Perl
63 lines
1.5 KiB
Perl
use 5.32.1;
|
|
|
|
use Test::Most tests => 7;
|
|
use Test::Warnings ':all';
|
|
|
|
use strict;
|
|
use warnings;
|
|
|
|
{
|
|
use_ok 'BeastBB::Response';
|
|
}
|
|
|
|
{
|
|
like(
|
|
warning {
|
|
BeastBB::Response->new(
|
|
is_error => 1,
|
|
content => 'example_content', error_message => 'example_error'
|
|
)
|
|
},
|
|
qr/Error should not have content/,
|
|
'BeastBB::Response warns on construction if is_error is true and content is passed.'
|
|
);
|
|
}
|
|
|
|
{
|
|
like(
|
|
warning {
|
|
BeastBB::Response->new(
|
|
is_error => 1,
|
|
)
|
|
},
|
|
qr/You should pass a error message on error\./,
|
|
'BeastBB::Response warns on construction if is_error is true and error message is not passed.'
|
|
);
|
|
}
|
|
|
|
{
|
|
my $response =
|
|
BeastBB::Response->new( is_error => 1, error_message => 'example error' );
|
|
throws_ok {
|
|
$response->Content;
|
|
}
|
|
qr/Attempt to get content from error\./,
|
|
'BeastBB::Response dies trying to recover content from error.';
|
|
}
|
|
|
|
{
|
|
my $response = BeastBB::Response->new( content => 'example_content' );
|
|
throws_ok {
|
|
$response->ErrorMessage;
|
|
}
|
|
qr/This is not an error\./,
|
|
'BeastBB::Response dies trying to recover error message if it is not an error.';
|
|
}
|
|
|
|
{
|
|
my $response =
|
|
BeastBB::Response->new( is_error => 1, error_message => 'example error' );
|
|
is $response->ErrorMessage, 'example error',
|
|
'ErrorMessage can be recovered from BeastBB::Response.';
|
|
}
|