1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66
|
use strict;
use warnings;
use Test::More tests => 10;
use Net::Proxy::Connector;
use Net::Proxy::Connector::dual;
my $c;
my $args = {};
eval { $c = Net::Proxy::Connector::dual->new($args); };
like( $@, qr/^'client_first' connector required /, 'No client_first' );
$args->{client_first} = 1;
eval { $c = Net::Proxy::Connector::dual->new($args); };
like(
$@,
qr/^'client_first' connector must be a HASHREF /,
'client_first not HASHREF'
);
$args->{client_first} = {};
eval { $c = Net::Proxy::Connector::dual->new($args); };
like(
$@,
qr/^'type' key required for 'client_first' connector /,
'No type for client_first'
);
$args->{client_first} = { type => 'zlonk' };
eval { $c = Net::Proxy::Connector::dual->new($args); };
like(
$@,
qr/^Couldn't load Net::Proxy::Connector::zlonk for 'client_first' connector: /,
'Bad connector type for client_first'
);
$args->{client_first} = { type => 'tcp' };
$args->{_proxy_} = bless {}, 'Net::Proxy';
eval { $c = Net::Proxy::Connector::dual->new( $args ); };
like( $@, qr/^'server_first' connector required /, 'No server_first' );
$args->{server_first} = 1;
eval { $c = Net::Proxy::Connector::dual->new($args); };
like(
$@,
qr/^'server_first' connector must be a HASHREF /,
'server_first not HASHREF'
);
$args->{server_first} = { type => 'zowie' };
eval { $c = Net::Proxy::Connector::dual->new($args); };
like(
$@,
qr/^Couldn't load Net::Proxy::Connector::zowie for 'server_first' connector: /,
'Bad connector type for server_first'
);
$args->{server_first} = { type => 'tcp' };
eval { $c = Net::Proxy::Connector::dual->new( $args ); };
like( $@, qr/^Parameter 'port' is required /, 'No port' );
$args->{port} = 444;
eval { $c = Net::Proxy::Connector::dual->new( $args ); };
is( $@, '', 'dual object created');
isa_ok( $c, 'Net::Proxy::Connector::dual' );
|