Test::WWW::Mechanize::CGIApp man page on Fedora

Man page or keyword search:  
man Server   31170 pages
apropos Keyword Search (all sections)
Output format
Fedora logo
[printable version]

Test::WWW::Mechanize::UserpContributed Perl DocTest::WWW::Mechanize::CGIApp(3)

NAME
       Test::WWW::Mechanize::CGIApp - Test::WWW::Mechanize for
       CGI::Application

SYNOPSIS
	 # We're in a t/*.t test script...
	 use Test::WWW::Mechanize::CGIApp;

	 my $mech = Test::WWW::Mechanize::CGIApp->new;

	 # test a class that uses CGI::Application calling semantics.
	 # (in this case we'll new up an instance of the app and call
	 # its ->run() method)
	 #
	 $mech->app("My::WebApp");
	 $mech->get_ok("?rm=my_run_mode&arg1=1&arg2=42");

	 # test a class that uses CGI::Application::Dispatch
	 # to locate the run_mode
	 # (in this case we'll just call the ->dispatch() class method).
	 #
	 my $dispatched_mech = Test::WWW::Mechanize::CGIApp->new;
	 $dispatched_mech->app("My::DispatchApp");
	 $mech->get_ok("/WebApp/my_run_mode?arg1=1&arg2=42");

	 # create an anonymous sub that this class will use to
	 # handle the request.
	 #
	 # this could be useful if you need to do something novel
	 # after creating an instance of your class (e.g. the
	 # fiddle_with_stuff() below) or maybe you have a unique
	 # way to get the app to run.
	 #
	 my $custom_mech = Test::WWW::Mechanize::CGIApp->new;
	 $custom_mech->app(
	    sub {
	      require "My::WebApp";
	      my $app = My::WebApp->new();
	      $app->fiddle_with_stuff();
	      $app->run();
	    });
	 $mech->get_ok("?rm=my_run_mode&arg1=1&arg2=42");

	 # at this point you can play with all kinds of cool
	 # Test::WWW::Mechanize testing methods.
	 is($mech->ct, "text/html");
	 $mech->title_is("Root", "On the root page");
	 $mech->content_contains("This is the root page", "Correct content");
	 $mech->follow_link_ok({text => 'Hello'}, "Click on Hello");
	 # ... and all other Test::WWW::Mechanize methods

DESCRIPTION
       This package makes testing CGIApp based modules fast and easy.  It
       takes advantage of Test::WWW::Mechanize to provide functions for common
       web testing scenarios. For example:

	 $mech->get_ok( $page );
	 $mech->title_is( "Invoice Status",
			  "Make sure we're on the invoice page" );
	 $mech->content_contains( "Andy Lester", "My name somewhere" );
	 $mech->content_like( qr/(cpan|perl)\.org/,
			     "Link to perl.org or CPAN" );

       For applications that inherit from CGI::Application it will handle
       requests by creating a new instance of the class and calling its "run"
       method.	For applications that use CGI::Application::Dispatch it will
       call the "dispatch" class method.  If neither of these options are the
       right thing, you can set a reference to a sub that will be used to
       handle the request.

       This module supports cookies automatically.

       Check out Test::WWW::Mechanize for more information about all of the
       cool things you can test!

CONSTRUCTOR
   new
       Behaves like, and calls, Test::WWW::Mechanize's "new" method.  It
       optionally uses an "app" parameter (see below), any other parameters
       get passed to Test::WWW::Mechanize's constructor. Note that you can
       either pass the name of the CGI::Application into the constructor using
       the "app" parameter or set it later using the "app" method.

	 use Test::WWW::Mechanize::CGIApp;
	 my $mech = Test::WWW::Mechanize::CGIApp->new;

	 # or

	 my $mech = Test::WWW::Mechanize::CGIApp->new(app => 'TestApp');

METHODS
   $mech->app($app_handler)
       This method provides a mechanism for informing
       Test::WWW::Mechanize::CGIApp how it should go about executing your
       run_mode.  If you set it to the name of a class, then it will load the
       class and either create an instance and ->run() it (if it's
       CGI::Application based), invoke the ->dispatch() method if it's
       CGI::Application::Dispatch based, or call the supplied anonymous
       subroutine and let it do all of the heavy lifting.

SEE ALSO
       Related modules which may be of interest: Test::WWW::Mechanize,
       WWW::Mechanize.

       Various implementation tricks came from Test::WWW::Mechanize::Catalyst.

AUTHOR
       George Hartzell, "<hartzell@alerce.com>"

       based on Test::WWW::Mechanize::Catalyst by Leon Brocard,
       "<acme@astray.com>".

COPYRIGHT
       Copyright (C) 2007, George Hartzell

       This module is free software; you can redistribute it or modify it
       under the same terms as Perl itself.

perl v5.14.1			  2007-07-12   Test::WWW::Mechanize::CGIApp(3)
[top]

List of man pages available for Fedora

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net