4 use Exporter qw/import/;
5 use Catalyst::Test qw/Gitalist/;
17 require Test::WWW::Mechanize::Catalyst;
18 require WWW::Mechanize::TreeBuilder;
19 my $mech = Test::WWW::Mechanize::Catalyst->new(catalyst_app => 'Gitalist');
20 WWW::Mechanize::TreeBuilder->meta->apply($mech, {
21 tree_class => 'HTML::TreeBuilder::XPath',
25 constant->import('MECH', $mech );
28 # Rechecking the same link multiple times is slow and lame!
29 # Nicked this from WWW::Mechanize and memoized it...
31 sub Test::WWW::Mechanize::Catalyst::page_links_ok {
35 $desc = 'All links ok' unless defined $desc;
37 my @links = $self->followable_links();
38 my @urls = Test::WWW::Mechanize::_format_links(\@links);
40 my @failures = $self->_check_links_status( [ grep { ! $seen_links{$_}++ } @urls ] );
41 my $ok = (@failures==0);
44 diag( $_ ) for @failures;
52 my $request = "/$uri";
53 $request .= "?$qs" if defined $qs;
54 my $response = request($request);
55 ok($response->is_success, "ok $request");
57 my $res = MECH()->get($request);
58 ok $res->is_success, "ok mech $request (" . $res->code . ')';
59 MECH()->page_links_ok("All links ok from $request")
60 if $res->content_type =~ m|text/html|;
67 my $to_curry = shift || \&test_uri;
70 $to_curry->("$prefix/$uri", @_);