Device-PaloAlto-Firewall
view release on metacpan or search on metacpan
t/000-http_errors.t view on Meta::CPAN
#!perl -T
use 5.006;
use strict;
use warnings;
use Test::More;
use Test::Warn;
use Test::Exception;
use HTTP::Response;
use Device::PaloAlto::Firewall;
my $http_error_responses = [
HTTP::Response->new(
400,
"400 Response",
undef,
q{<response status = 'error' code = '400'><result><msg>Illegal parameter [request]</msg></result></response>}
),
HTTP::Response->new(
403,
"403 Response",
undef,
q{<response status = 'error' code = '403'><result><msg>Invalid credentials.</msg></result></response>}
),
HTTP::Response->new(
500,
"500 Response",
undef,
q{}
),
HTTP::Response->new(
503,
"503 Response",
undef,
q{<html>
<head><title>502 Bad Gateway</title></head>
<body bgcolor="white">
<center><h1>502 Bad Gateway</h1></center>
<hr><center></center>
</body>
</html>}
)
];
plan tests => 47 * @{ $http_error_responses } ;
my $fw = Device::PaloAlto::Firewall->new(uri => 'http://localhost.localdomain', username => 'test', password => 'test');
my $test = $fw->tester();
for my $response (@{ $http_error_responses }) {
$fw->meta->add_method('_send_http_request', sub { return $response } );
# Supress the warning output
no warnings 'redefine';
local *Device::PaloAlto::Firewall::Test::carp = sub { };
local *Device::PaloAlto::Firewall::carp = sub { };
ok( !$fw->authenticate(), "authenticate() returns undef on ".$response->message );
ok( !$fw->system_info(), "system_info() returns undef on ".$response->message );
ok( !$fw->environmentals(), "environmentals() returns undef on ".$response->message );
ok( !$fw->high_availability(), "high_availability() returns undef on ".$response->message );
ok( !$fw->software_check(), "software_check() returns undef on ".$response->message );
ok( !$fw->content_check(), "content_check() returns undef on ".$response->message );
ok( !$fw->antivirus_check(), "antivirus_check() returns undef on ".$response->message );
ok( !$fw->gp_client_check(), "gp_client_check() returns undef on ".$response->message );
ok( !$fw->licenses(), "licenses() returns undef on ".$response->message );
ok( !$fw->interfaces(), "interfaces() returns undef on ".$response->message );
ok( !$fw->interface_counters_logical(), "interface_counters_logical() returns undef on ".$response->message );
ok( !$fw->routing_table(), "routing_table() returns undef on ".$response->message );
ok( !$fw->bgp_peers(), "bgp_peers() returns undef on ".$response->message );
ok( !$fw->bgp_rib(), "bgp_rib() returns undef on ".$response->message );
ok( !$fw->ospf_neighbours(), "ospf_neighbours() returns undef on ".$response->message );
ok( !$fw->pim_neighbours(), "pim_neighbours() returns undef on ".$response->message );
ok( !$fw->bfd_peers(), "bfd_peers() returns undef on ".$response->message );
ok( !$fw->ntp(), "ntp() returns undef on ".$response->message );
ok( !$fw->panorama_status(), "panorama_status() returns undef on ".$response->message );
ok( !$fw->ip_user_mapping(), "ip_user_mapping() returns undef on ".$response->message );
ok( !$fw->userid_server_monitor(), "userid_server_monitor() returns undef on ".$response->message );
ok( !$fw->ike_peers(), "ike_peers() returns undef on ".$response->message );
ok( !$fw->ipsec_peers(), "ipsec_peers() returns undef on ".$response->message );
ok( !$fw->vpn_tunnels(), "vpn_tunnels() returns undef on ".$response->message );
( run in 1.684 second using v1.01-cache-2.11-cpan-cdf2f3d4e48 )