Reinstate _config call in template
[catagits/Catalyst-Runtime.git] / lib / Catalyst / Helper.pm
index acc818b..eacfb69 100644 (file)
@@ -501,7 +501,7 @@ So when you call C<bin/create view MyView TT>, create would try to execute
 Catalyst::Helper::View::TT->mk_compclass and
 Catalyst::Helper::View::TT->mk_comptest.
 
-See L<Catalyst::Helper::View::TT> and L<Catalyst::Helper::Model::CDBI> for
+See L<Catalyst::Helper::View::TT> and L<Catalyst::Helper::Model::DBIC> for
 examples.
 
 All helper classes should be under one of the following namespaces.
@@ -544,14 +544,21 @@ use warnings;
 # Set flags and add plugins for the application
 #
 #         -Debug: activates the debug mode for very useful log messages
+#   ConfigLoader: will load the configuration from a YAML file in the
+#                 application's home directory
 # Static::Simple: will serve static files from the application's root 
-# directory
+#                 directory
 #
 use Catalyst qw/-Debug ConfigLoader Static::Simple/;
 
 our $VERSION = '0.01';
 
 #
+# Configure the application 
+#
+__PACKAGE__->config( name => '[% name %]' );
+
+#
 # Start the application
 #
 __PACKAGE__->setup;
@@ -992,16 +999,18 @@ use Pod::Usage;
 use Catalyst::Helper;
 
 my $force = 0;
+my $mech  = 0;
 my $help  = 0;
 
 GetOptions(
-    'nonew|force' => \$force,
-    'help|?'      => \$help
+    'nonew|force'    => \$force,
+    'mech|mechanize' => \$mech,
+    'help|?'         => \$help
  );
 
 pod2usage(1) if ( $help || !$ARGV[0] );
 
-my $helper = Catalyst::Helper->new( { '.newfiles' => !$force } );
+my $helper = Catalyst::Helper->new( { '.newfiles' => !$force, mech => $mech } );
 
 pod2usage(1) unless $helper->mk_component( '[% name %]', @ARGV );
 
@@ -1016,17 +1025,19 @@ pod2usage(1) unless $helper->mk_component( '[% name %]', @ARGV );
 [% appprefix %]_create.pl [options] model|view|controller name [helper] [options]
 
  Options:
-   -force    don't create a .new file where a file to be created exists
-   -help     display this help and exits
+   -force        don't create a .new file where a file to be created exists
+   -mechanize    use Test::WWW::Mechanize::Catalyst for tests if available
+   -help         display this help and exits
 
  Examples:
    [% appprefix %]_create.pl controller My::Controller
+   [% appprefix %]_create.pl -mechanize controller My::Controller
    [% appprefix %]_create.pl view My::View
    [% appprefix %]_create.pl view MyView TT
    [% appprefix %]_create.pl view TT TT
    [% appprefix %]_create.pl model My::Model
-   [% appprefix %]_create.pl model SomeDB CDBI dbi:SQLite:/tmp/my.db
-   [% appprefix %]_create.pl model AnotherDB CDBI dbi:Pg:dbname=foo root 4321
+   [% appprefix %]_create.pl model SomeDB DBIC::SchemaLoader dbi:SQLite:/tmp/my.db
+   [% appprefix %]_create.pl model AnotherDB DBIC::SchemaLoader dbi:Pg:dbname=foo root 4321
 
  See also:
    perldoc Catalyst::Manual
@@ -1105,12 +1116,23 @@ it under the same terms as Perl itself.
 __comptest__
 use strict;
 use warnings;
-[% IF long_type == 'Controller' %]use Test::More tests => 3;
+[% IF long_type == 'Controller' %][% IF mech %]use Test::More;
+
+eval "use Test::WWW::Mechanize::Catalyst '[% app %]'";
+plan $@
+    ? ( skip_all => 'Test::WWW::Mechanize::Catalyst required' )
+    : ( tests => 2 );
+
+ok( my $mech = Test::WWW::Mechanize::Catalyst->new, 'Created mech object' );
+
+$mech->get_ok( 'http://localhost[% uri %]' );
+[% ELSE %]use Test::More tests => 3;
 
 BEGIN { use_ok 'Catalyst::Test', '[% app %]' }
 BEGIN { use_ok '[% class %]' }
 
 ok( request('[% uri %]')->is_success, 'Request should succeed' );
+[% END %]
 [% ELSE %]use Test::More tests => 1;
 
 BEGIN { use_ok '[% class %]' }