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
|
use warnings;
use strict;
use Test::More;
use Test::Warnings qw( :all );
use URI::file ();
use WWW::Mechanize ();
my $mech = WWW::Mechanize->new( cookie_jar => undef, max_redirect => 0 );
isa_ok( $mech, 'WWW::Mechanize' );
my $uri = URI::file->new_abs('t/find_link.html')->as_string;
$mech->get($uri);
ok( $mech->success, "Fetched $uri" ) or die q{Can't get test page};
REGEX_USAGE: {
for my $tname (qw( TEXT NAME URL TAG )) {
like warning {
$mech->find_link( $tname => 'expect error' );
}, qr/Unknown link-finding parameter/,
"detected usage error: $tname => 'string'";
}
}
REGEX_STRING: {
for my $tn (qw( text name url tag )) {
my $tname = $tn . '_regex';
like warning {
$mech->find_link( $tname => 'expect error' );
}, qr/passed as $tname is not a regex/,
"detected usage error: $tname => 'string'";
}
}
NON_REGEX_STRING: {
for my $tname (qw( text name url tag )) {
like warning {
$mech->find_link( $tname => qr/foo/ );
}, qr/passed as '$tname' is a regex/,
"detected usage error: $tname => Regex";
}
}
SPACE_PADDED: {
for my $tname (qw( text name url tag )) {
like warning {
$mech->find_link( $tname => ' a padded astring ' );
}, qr/is space-padded and cannot succeed/,
"detected usage error: $tname => padded-string";
}
}
done_testing();
|