Test::Mock::LWP - Easy mocking of LWP packages
Make LWP packages to make testing easier.
use Test::Mock::LWP; # Setup fake response content and code $Mock_response->mock( content => sub { 'foo' } ); $Mock_resp->mock( code => sub { 201 } ); # Validate args passed to request constructor is_deeply $Mock_request->new_args, \@expected_args; # Validate request headers is_deeply [ $Mock_req->next_call ], [ 'header', [ 'Accept', 'text/plain' ] ]; # Special User Agent Behaviour $Mock_ua->mock( request => sub { die 'foo' } );
This package arises from duplicating the same code to mock LWP et al in several different modules I've written. This version is very minimalist, but works for my needs so far. I'm very open to new suggestions and improvements.
The following variables are exported by default:
The mock LWP::UserAgent object - a Test::MockObject object
The mock HTTP::Request object - a Test::MockObject object
The mock HTTP::Response object - a Test::MockObject object
Luke Closs, <test-mock-lwp at 5thplane.com>
<test-mock-lwp at 5thplane.com>
Please report any bugs or feature requests through the web interface at http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Test-Mock-LWP. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.
You can find documentation for this module with the perldoc command.
perldoc Test::Mock::LWP
You can also look for information at:
AnnoCPAN: Annotated CPAN documentation
http://annocpan.org/dist/Test-Mock-LWP
CPAN Ratings
http://cpanratings.perl.org/d/Test-Mock-LWP
RT: CPAN's request tracker
http://rt.cpan.org/NoAuth/Bugs.html?Dist=Test-Mock-LWP
Search CPAN
http://search.cpan.org/dist/Test-Mock-LWP
Copyright 2006 Luke Closs, all rights reserved.
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
To install Test::Mock::LWP, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Test::Mock::LWP
CPAN shell
perl -MCPAN -e shell install Test::Mock::LWP
For more information on module installation, please visit the detailed CPAN module installation guide.