Commits

Anonymous committed 094eb29

Revised the README.

Comments (0)

Files changed (1)

Test-WWW-Mechanize-Mojo/README

-NAME
-    Test::WWW::Mechanize::Catalyst - Test::WWW::Mechanize for Catalyst
+Test::WWW::Mechanize::Mojo - Test::WWW::Mechanize for Mojo
 
-SYNOPSIS
-      # We're in a t/*.t test script...
-      use Test::WWW::Mechanize::Catalyst;
+Test::WWW::Mechanize::Mojo is a module to test Mojo applications using
+Test::WWW::Mechanize and WWW::Mechanize.
 
-      # To test a Catalyst application named 'Catty':
-      my $mech = Test::WWW::Mechanize::Catalyst->new(catalyst_app => 'Catty');
+It is based on Test::WWW::Mechanize::Catalyst .
 
-      $mech->get_ok("/"); # no hostname needed
-      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
-      
-  # White label site testing
-      $mech->host("foo.com");
-      $mech->get_ok("/");
+INSTALLATION
 
-DESCRIPTION
-    Catalyst is an elegant MVC Web Application Framework.
-    Test::WWW::Mechanize is a subclass of WWW::Mechanize that incorporates
-    features for web application testing. The Test::WWW::Mechanize::Catalyst
-    module meshes the two to allow easy testing of Catalyst applications
-    without needing to starting up a web server.
+To install this module, run the following commands:
 
-    Testing web applications has always been a bit tricky, normally
-    requiring starting a web server for your application and making real
-    HTTP requests to it. This module allows you to test Catalyst web
-    applications but does not require a server or issue HTTP requests.
-    Instead, it passes the HTTP request object directly to Catalyst. Thus
-    you do not need to use a real hostname: "http://localhost/" will do.
-    However, this is optional. The following two lines of code do exactly
-    the same thing:
+    perl Build.PL
+    ./Build
+    ./Build test
+    ./Build install
 
-      $mech->get_ok('/action');
-      $mech->get_ok('http://localhost/action');
 
-    Links which do not begin with / or are not for localhost can be handled
-    as normal Web requests - this is handy if you have an external single
-    sign-on system. You must set allow_external to true for this:
+SUPPORT AND DOCUMENTATION
 
-      $mech->allow_external(1);
+After installing, you can find documentation for this module with the perldoc command.
 
-    You can also test a remote server by setting the environment variable
-    CATALYST_SERVER; for example:
+    perldoc Test::WWW::Mechanize::Mojo
 
-      $ CATALYST_SERVER=http://example.com/myapp prove -l t
+You can also look for information at:
 
-    will run the same tests on the application running at
-    http://example.com/myapp regardless of whether or not you specify
-    http:://localhost for Test::WWW::Mechanize::Catalyst.
+    Search CPAN
+        http://search.cpan.org/dist/Test-WWW-Mechanize-Mojo/
 
-    Furthermore, if you set CATALYST_SERVER, the server will be regarded as
-    a remote server even if your links point to localhost. Thus, you can use
-    Test::WWW::Mechanize::Catalyst to test your live webserver running on
-    your local machine, if you need to test aspects of your deployment
-    environment (for example, configuration options in an http.conf file)
-    instead of just the Catalyst request handling.
+    CPAN Request Tracker:
+        http://rt.cpan.org/NoAuth/Bugs.html?Dist=Test::WWW::Mechanize::Mojo
 
-    This makes testing fast and easy. Test::WWW::Mechanize provides
-    functions for common web testing scenarios. For example:
+    AnnoCPAN, annotated CPAN documentation:
+        http://annocpan.org/dist/Test::WWW::Mechanize::Mojo
 
-      $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" );
+    CPAN Ratings:
+        http://cpanratings.perl.org/d/Test::WWW::Mechanize::Mojo
 
-    This module supports cookies automatically.
+COPYRIGHT AND LICENCE
 
-    To use this module you must pass it the name of the application. See the
-    SYNOPSIS above.
+Copyright (C) 2005-8, Leon Brocard
 
-    Note that Catalyst has a special developing feature: the debug screen.
-    By default this module will treat responses which are the debug screen
-    as failures. If you actually want to test debug screens, please use:
+This module is free software; you can redistribute it or modify it
+under the same terms as Perl itself.
 
-      $mmech->{catalyst_debug} = 1;
-
-    An alternative to this module is Catalyst::Test.
-
-CONSTRUCTOR
-  new
-    Behaves like, and calls, WWW::Mechanize's "new" method. Any params
-    passed in get passed to WWW::Mechanize's constructor. Note that we need
-    to pass the name of the Catalyst application to the "use":
-
-      use Test::WWW::Mechanize::Catalyst 'Catty';
-      my $mech = Test::WWW::Mechanize::Catalyst->new;
-
-METHODS
-  allow_external
-    Links which do not begin with / or are not for localhost can be handled
-    as normal Web requests - this is handy if you have an external single
-    sign-on system. You must set allow_external to true for this:
-
-      $m->allow_external(1);
-
-    head2 catalyst_app
-
-    The name of the Catalyst app which we are testing against. Read-only.
-
-  host
-    The host value to set the "Host:" HTTP header to, if none is present
-    already in the request. If not set (default) then Catalyst::Test will
-    set this to localhost:80
-
-  clear_host
-    Unset the host attribute.
-
-  has_host
-    Do we have a value set for the host attribute
-
-  $mech->get_ok($url, [ \%LWP_options ,] $desc)
-    A wrapper around WWW::Mechanize's get(), with similar options, except
-    the second argument needs to be a hash reference, not a hash. Returns
-    true or false.
-
-  $mech->title_is( $str [, $desc ] )
-    Tells if the title of the page is the given string.
-
-        $mech->title_is( "Invoice Summary" );
-
-  $mech->title_like( $regex [, $desc ] )
-    Tells if the title of the page matches the given regex.
-
-        $mech->title_like( qr/Invoices for (.+)/
-
-  $mech->title_unlike( $regex [, $desc ] )
-    Tells if the title of the page does NOT match the given regex.
-
-        $mech->title_unlike( qr/Invoices for (.+)/
-
-  $mech->content_is( $str [, $desc ] )
-    Tells if the content of the page matches the given string
-
-  $mech->content_contains( $str [, $desc ] )
-    Tells if the content of the page contains *$str*.
-
-  $mech->content_lacks( $str [, $desc ] )
-    Tells if the content of the page lacks *$str*.
-
-  $mech->content_like( $regex [, $desc ] )
-    Tells if the content of the page matches *$regex*.
-
-  $mech->content_unlike( $regex [, $desc ] )
-    Tells if the content of the page does NOT match *$regex*.
-
-  $mech->page_links_ok( [ $desc ] )
-    Follow all links on the current page and test for HTTP status 200
-
-        $mech->page_links_ok('Check all links');
-
-  $mech->page_links_content_like( $regex,[ $desc ] )
-    Follow all links on the current page and test their contents for
-    *$regex*.
-
-        $mech->page_links_content_like( qr/foo/,
-          'Check all links contain "foo"' );
-
-  $mech->page_links_content_unlike( $regex,[ $desc ] )
-    Follow all links on the current page and test their contents do not
-    contain the specified regex.
-
-        $mech->page_links_content_unlike(qr/Restricted/,
-          'Check all links do not contain Restricted');
-
-  $mech->links_ok( $links [, $desc ] )
-    Check the current page for specified links and test for HTTP status 200.
-    The links may be specified as a reference to an array containing
-    WWW::Mechanize::Link objects, an array of URLs, or a scalar URL name.
-
-        my @links = $mech->find_all_links( url_regex => qr/cnn\.com$/ );
-        $mech->links_ok( \@links, 'Check all links for cnn.com' );
-
-        my @links = qw( index.html search.html about.html );
-        $mech->links_ok( \@links, 'Check main links' );
-
-        $mech->links_ok( 'index.html', 'Check link to index' );
-
-  $mech->link_status_is( $links, $status [, $desc ] )
-    Check the current page for specified links and test for HTTP status
-    passed. The links may be specified as a reference to an array containing
-    WWW::Mechanize::Link objects, an array of URLs, or a scalar URL name.
-
-        my @links = $mech->links();
-        $mech->link_status_is( \@links, 403,
-          'Check all links are restricted' );
-
-  $mech->link_status_isnt( $links, $status [, $desc ] )
-    Check the current page for specified links and test for HTTP status
-    passed. The links may be specified as a reference to an array containing
-    WWW::Mechanize::Link objects, an array of URLs, or a scalar URL name.
-
-        my @links = $mech->links();
-        $mech->link_status_isnt( \@links, 404,
-          'Check all links are not 404' );
-
-  $mech->link_content_like( $links, $regex [, $desc ] )
-    Check the current page for specified links and test the content of each
-    against *$regex*. The links may be specified as a reference to an array
-    containing WWW::Mechanize::Link objects, an array of URLs, or a scalar
-    URL name.
-
-        my @links = $mech->links();
-        $mech->link_content_like( \@links, qr/Restricted/,
-            'Check all links are restricted' );
-
-  $mech->link_content_unlike( $links, $regex [, $desc ] )
-    Check the current page for specified links and test the content of each
-    does not match *$regex*. The links may be specified as a reference to an
-    array containing WWW::Mechanize::Link objects, an array of URLs, or a
-    scalar URL name.
-
-        my @links = $mech->links();
-        $mech->link_content_like( \@links, qr/Restricted/,
-          'Check all links are restricted' );
-
-  follow_link_ok( \%parms [, $comment] )
-    Makes a "follow_link()" call and executes tests on the results. The link
-    must be found, and then followed successfully. Otherwise, this test
-    fails.
-
-    *%parms* is a hashref containing the params to pass to "follow_link()".
-    Note that the params to "follow_link()" are a hash whereas the parms to
-    this function are a hashref. You have to call this function like:
-
-        $agent->follow_like_ok( {n=>3}, "looking for 3rd link" );
-
-    As with other test functions, $comment is optional. If it is supplied
-    then it will display when running the test harness in verbose mode.
-
-    Returns true value if the specified link was found and followed
-    successfully. The HTTP::Response object returned by follow_link() is not
-    available.
-
-CAVEATS
-  External Redirects and allow_external
-    If you use non-fully qualified urls in your test scripts (i.e. anything
-    without a host, such as "->get_ok( "/foo")" ) and your app redirects to
-    an external URL, expect to be bitten once you come back to your
-    application's urls (it will try to request them on the remote server.)
-    This is due to a limitation in WWW::Mechanize.
-
-    One workaround for this is that if you are expecting to redirect to an
-    external site, clone the TWMC obeject and use the cloned object for the
-    external redirect.
-
-SEE ALSO
-    Related modules which may be of interest: Catalyst,
-    Test::WWW::Mechanize, WWW::Mechanize.
-
-AUTHOR
-    Ash Berlin "<ash@cpan.org>" (current maintiner)
-
-    Original Author: Leon Brocard, "<acme@astray.com>"
-
-COPYRIGHT
-    Copyright (C) 2005-8, Leon Brocard
-
-LICENSE
-    This module is free software; you can redistribute it or modify it under
-    the same terms as Perl itself.
-