r75925 - in /branches/upstream/libcgi-application-plugin-configauto-perl: ./ current/ current/lib/ current/lib/CGI/ current/lib/CGI/Application/ current/lib/CGI/Application/Plugin/ current/t/
periapt-guest at users.alioth.debian.org
periapt-guest at users.alioth.debian.org
Sat Jun 18 09:34:56 UTC 2011
Author: periapt-guest
Date: Sat Jun 18 09:34:52 2011
New Revision: 75925
URL: http://svn.debian.org/wsvn/pkg-perl/?sc=1&rev=75925
Log:
[svn-inject] Installing original source of libcgi-application-plugin-configauto-perl (1.33)
Added:
branches/upstream/libcgi-application-plugin-configauto-perl/
branches/upstream/libcgi-application-plugin-configauto-perl/current/
branches/upstream/libcgi-application-plugin-configauto-perl/current/Build.PL
branches/upstream/libcgi-application-plugin-configauto-perl/current/Changes
branches/upstream/libcgi-application-plugin-configauto-perl/current/MANIFEST
branches/upstream/libcgi-application-plugin-configauto-perl/current/META.yml
branches/upstream/libcgi-application-plugin-configauto-perl/current/Makefile.PL
branches/upstream/libcgi-application-plugin-configauto-perl/current/README
branches/upstream/libcgi-application-plugin-configauto-perl/current/lib/
branches/upstream/libcgi-application-plugin-configauto-perl/current/lib/CGI/
branches/upstream/libcgi-application-plugin-configauto-perl/current/lib/CGI/Application/
branches/upstream/libcgi-application-plugin-configauto-perl/current/lib/CGI/Application/Plugin/
branches/upstream/libcgi-application-plugin-configauto-perl/current/lib/CGI/Application/Plugin/ConfigAuto.pm
branches/upstream/libcgi-application-plugin-configauto-perl/current/t/
branches/upstream/libcgi-application-plugin-configauto-perl/current/t/TestAppBasic.pm
branches/upstream/libcgi-application-plugin-configauto-perl/current/t/basic.t
branches/upstream/libcgi-application-plugin-configauto-perl/current/t/basic_config.pl
branches/upstream/libcgi-application-plugin-configauto-perl/current/t/empty.t
branches/upstream/libcgi-application-plugin-configauto-perl/current/t/empty_config.pl
branches/upstream/libcgi-application-plugin-configauto-perl/current/t/pod.t
Added: branches/upstream/libcgi-application-plugin-configauto-perl/current/Build.PL
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libcgi-application-plugin-configauto-perl/current/Build.PL?rev=75925&op=file
==============================================================================
--- branches/upstream/libcgi-application-plugin-configauto-perl/current/Build.PL (added)
+++ branches/upstream/libcgi-application-plugin-configauto-perl/current/Build.PL Sat Jun 18 09:34:52 2011
@@ -1,0 +1,16 @@
+use Module::Build;
+
+Module::Build->new(
+ module_name => 'CGI::Application::Plugin::ConfigAuto',
+ license => 'perl',
+ requires => {
+ 'CGI::Application' => 0,
+ 'Config::Auto' => 0,
+ 'Carp' => 0,
+ },
+ create_makefile_pl => 'traditional',
+ create_readme => 1,
+ dist_author => 'Mark Stosberg <mark at summersault.com>',
+ dist_abstract => 'Plugin that adds Config::Auto support to CGI::Application',
+)->create_build_script;
+
Added: branches/upstream/libcgi-application-plugin-configauto-perl/current/Changes
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libcgi-application-plugin-configauto-perl/current/Changes?rev=75925&op=file
==============================================================================
--- branches/upstream/libcgi-application-plugin-configauto-perl/current/Changes (added)
+++ branches/upstream/libcgi-application-plugin-configauto-perl/current/Changes Sat Jun 18 09:34:52 2011
@@ -1,0 +1,46 @@
+Revision history for Perl extension CGI::Application::Plugin::ConfigAuto
+
+1.33 March 1st, 2011
+ (no meaningful code changes)
+ [DOCUMENTATION]
+ Document the recommended use of "my" in the example config file. (Zakarias Santanu)
+
+1.32 Thu Feb 25 23:28:15 EST 2010
+ (no code changes)
+ [TESTS]
+ Attempted test fix to address: Global symbol "%CFG" requires explicit package name
+
+1.31 Mon Jul 20 15:27:42 EDT 2009
+ [DOCUMENTATION]
+ - Fix a couple of broken documentation links (Lyle Hopkins)
+
+1.30 Sat Feb 18 23:35:44 EST 2006
+
+ - comply with CGI::Application::Config::Standard 1.0. (Mark Stosberg)
+
+1.20 Sat Jul 23 18:37:14 EST 2005
+
+ - Update recommended usage syntax.
+
+1.10
+ - Make death messages more useful by 'croaking' instead of die'ing
+ - Docs clarified (Dan Horne)
+ - die if no valid configuration is found. (William McKee)
+ - Explicit file format can now be provided for files.
+
+1.00
+ - First release on CPAN.
+ - Documentation patch (William McKee)
+
+0.21 Mon Sep 6 18:03:23 EST 2004
+ - Added missing t/basic_config.pl to distribution (William McKee)
+
+0.20 Mon Sep 6 16:24:23 EST 2004
+ - Add support for return config info as a hashref (William McKee)
+
+0.10 Mon Sep 6 12:11:08 EST 2004
+ - added cfg_file(), a simpler syntax for providing config file names.
+
+0.02 Sun Sep 5 18:47:48 EST 2004
+ - initial release
+
Added: branches/upstream/libcgi-application-plugin-configauto-perl/current/MANIFEST
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libcgi-application-plugin-configauto-perl/current/MANIFEST?rev=75925&op=file
==============================================================================
--- branches/upstream/libcgi-application-plugin-configauto-perl/current/MANIFEST (added)
+++ branches/upstream/libcgi-application-plugin-configauto-perl/current/MANIFEST Sat Jun 18 09:34:52 2011
@@ -1,0 +1,13 @@
+Build.PL
+Changes
+lib/CGI/Application/Plugin/ConfigAuto.pm
+Makefile.PL
+MANIFEST
+META.yml
+README
+t/basic.t
+t/empty.t
+t/pod.t
+t/TestAppBasic.pm
+t/basic_config.pl
+t/empty_config.pl
Added: branches/upstream/libcgi-application-plugin-configauto-perl/current/META.yml
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libcgi-application-plugin-configauto-perl/current/META.yml?rev=75925&op=file
==============================================================================
--- branches/upstream/libcgi-application-plugin-configauto-perl/current/META.yml (added)
+++ branches/upstream/libcgi-application-plugin-configauto-perl/current/META.yml Sat Jun 18 09:34:52 2011
@@ -1,0 +1,17 @@
+--- #YAML:1.0
+name: CGI-Application-Plugin-ConfigAuto
+version: 1.33
+author:
+ - Mark Stosberg <mark at summersault.com>
+abstract: |-
+ Plugin that adds Config::Auto support to CGI::Application
+license: perl
+requires:
+ CGI::Application: 0
+ Carp: 0
+ Config::Auto: 0
+provides:
+ CGI::Application::Plugin::ConfigAuto:
+ file: lib/CGI/Application/Plugin/ConfigAuto.pm
+ version: 1.33
+generated_by: Module::Build version 0.2611
Added: branches/upstream/libcgi-application-plugin-configauto-perl/current/Makefile.PL
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libcgi-application-plugin-configauto-perl/current/Makefile.PL?rev=75925&op=file
==============================================================================
--- branches/upstream/libcgi-application-plugin-configauto-perl/current/Makefile.PL (added)
+++ branches/upstream/libcgi-application-plugin-configauto-perl/current/Makefile.PL Sat Jun 18 09:34:52 2011
@@ -1,0 +1,15 @@
+# Note: this file was auto-generated by Module::Build::Compat version 0.03
+use ExtUtils::MakeMaker;
+WriteMakefile
+(
+ 'NAME' => 'CGI::Application::Plugin::ConfigAuto',
+ 'VERSION_FROM' => 'lib/CGI/Application/Plugin/ConfigAuto.pm',
+ 'PREREQ_PM' => {
+ 'CGI::Application' => '0',
+ 'Carp' => '0',
+ 'Config::Auto' => '0'
+ },
+ 'INSTALLDIRS' => 'site',
+ 'PL_FILES' => {}
+ )
+;
Added: branches/upstream/libcgi-application-plugin-configauto-perl/current/README
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libcgi-application-plugin-configauto-perl/current/README?rev=75925&op=file
==============================================================================
--- branches/upstream/libcgi-application-plugin-configauto-perl/current/README (added)
+++ branches/upstream/libcgi-application-plugin-configauto-perl/current/README Sat Jun 18 09:34:52 2011
@@ -1,0 +1,142 @@
+NAME
+ CGI::Application::Plugin::ConfigAuto - Easy config file management for
+ CGI::Application
+
+SYNOPSIS
+ use CGI::Application::Plugin::ConfigAuto (qw/cfg/);
+
+ In your instance script:
+
+ my $app = WebApp->new(PARAMS => { cfg_file => 'config.pl' });
+ $app->run();
+
+ In your application module:
+
+ sub my_run_mode {
+ my $self = shift;
+
+ # Access a config hash key directly
+ $self->cfg('field');
+
+ # Return config as hash
+ %CFG = $self->cfg;
+
+ }
+
+DESCRIPTION
+ CGI::Application::Plugin::ConfigAuto adds easy access to config file
+ variables to your CGI::Application modules. Lazy loading is used to
+ prevent the config file from being parsed if no configuration variables
+ are accessed during the request. In other words, the config file is not
+ parsed until it is actually needed. The Config::Auto package provides
+ the framework for this plugin.
+
+RATIONALE
+ "CGI::Application" promotes re-usable applications by moving a maximal
+ amount of code into modules. For an application to be fully re-usable
+ without code changes, it is also necessary to store configuration
+ variables in a separate file.
+
+ This plugin supports multiple config files for a single application,
+ allowing config files to override each other in a particular order. This
+ covers even complex cases, where you have a global config file, and
+ second local config file which overrides a few variables.
+
+ It is recommended that you to declare your config file locations in the
+ instance scripts, where it will have minimum impact on your application.
+ This technique is ideal when you intend to reuse your module to support
+ multiple configuration files. If you have an application with multiple
+ instance scripts which share a single config file, you may prefer to
+ call the plugin from the setup() method.
+
+DECLARING CONFIG FILE LOCATIONS
+ # In your instance script
+ # value can also be an arrayref of config files
+ my $app = WebApp->new(PARAMS => { cfg_file => 'config.pl' })
+
+ # OR ...
+
+ # Pass in an array of config files, and they will be processed in order.
+ $app->cfg_file('../../config/config.pl');
+
+ Your config files should be referenced using the syntax example above.
+ Note that the key "config_files" can be used as alternative to cfg_file.
+
+ The format is detected automatically using Config::Auto. It it known to
+ support the following formats: colon separated, space separated, equals
+ separated, XML, Perl code, and Windows INI. See that modules
+ documentation for complete details.
+
+METHODS
+ cfg()
+ # Access a config hash key directly
+ $self->cfg('field');
+
+ # Return config as hash
+ my %CFG = $self->cfg;
+
+ # return as hashref
+ my $cfg_href = $self->cfg;
+
+ A method to access project configuration variables. The config file is
+ parsed on the first call with a perl hash representation stored in
+ memory. Subsequent calls will use this version, rather than re-reading
+ the file.
+
+ In list context, it returns the configuration data as a hash. In scalar
+ context, it returns the configuration data as a hashref.
+
+ config()
+ "config()" in CGI::Application::Standard::Config is provided as an alias
+ to cfg() for compliance with CGI::Application::Standard::Config. It
+ always exported by default per the standard.
+
+ std_config()
+ "std_config()" in CGI::Application::Standard::Config is implemented to
+ comply with CGI::Application::Standard::Config. It's for developers.
+ Users can ignore it.
+
+ cfg_file()
+ # Usual
+ $self->cfg_file('my_config_file.pl');
+
+ # Supply the first format, guess the second
+ $self->cfg_file('my_config_file.pl',{ format => 'perl' } );
+
+ Supply an array of config files, and they will be processed in order. If
+ a hash reference if found it, will be used to supply the format for the
+ previous file in the array.
+
+FILE FORMAT HINTS
+ Perl
+ Here's a simple example of my favorite config file format: Perl. Having
+ the "shebang" line at the top helps "Config::Auto" to identify it as a
+ Perl file. Also, be sure that your last statement returns a hash
+ reference.
+
+ #!/usr/bin/perl
+
+ my %CFG = ();
+
+ # directory path name
+ $CFG{DIR} = '/home/mark/www';
+
+ # website URL
+ $CFG{URL} = 'http://mark.stosberg.com/';
+
+ \%CFG;
+
+SEE ALSO
+ CGI::Application CGI::Application::Plugin::ValidateRM
+ CGI::Application::Plugin::DBH CGI::Application::Standard::Config.
+ perl(1)
+
+AUTHOR
+ Mark Stosberg "mark at summersault.com"
+
+LICENSE
+ Copyright (C) 2004 - 2011 Mark Stosberg "mark at summersault.com"
+
+ This library is free software. You can modify and or distribute it under
+ the same terms as Perl itself.
+
Added: branches/upstream/libcgi-application-plugin-configauto-perl/current/lib/CGI/Application/Plugin/ConfigAuto.pm
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libcgi-application-plugin-configauto-perl/current/lib/CGI/Application/Plugin/ConfigAuto.pm?rev=75925&op=file
==============================================================================
--- branches/upstream/libcgi-application-plugin-configauto-perl/current/lib/CGI/Application/Plugin/ConfigAuto.pm (added)
+++ branches/upstream/libcgi-application-plugin-configauto-perl/current/lib/CGI/Application/Plugin/ConfigAuto.pm Sat Jun 18 09:34:52 2011
@@ -1,0 +1,255 @@
+package CGI::Application::Plugin::ConfigAuto;
+use base 'Exporter';
+use Carp;
+use strict;
+
+our @EXPORT_OK = qw(
+ cfg_file
+ cfg
+);
+
+# For compliance with CGI::App::Standard::Config
+# we break the rule and export config and std_config by default.
+sub import {
+ my $app = caller;
+ no strict 'refs';
+ my $full_name = $app . '::config';
+ *$full_name = \&cfg;
+
+ my $std_config_name = $app.'::std_config';
+ *$std_config_name = \&std_config;
+ CGI::Application::Plugin::ConfigAuto->export_to_level(1, at _);
+}
+
+
+our $VERSION = '1.33';
+
+# required by C::A::Standard::Config;
+sub std_config { return 1; }
+
+=pod
+
+=head1 NAME
+
+CGI::Application::Plugin::ConfigAuto - Easy config file management for CGI::Application
+
+=head1 SYNOPSIS
+
+ use CGI::Application::Plugin::ConfigAuto (qw/cfg/);
+
+In your instance script:
+
+ my $app = WebApp->new(PARAMS => { cfg_file => 'config.pl' });
+ $app->run();
+
+In your application module:
+
+ sub my_run_mode {
+ my $self = shift;
+
+ # Access a config hash key directly
+ $self->cfg('field');
+
+ # Return config as hash
+ %CFG = $self->cfg;
+
+ }
+
+
+=head1 DESCRIPTION
+
+CGI::Application::Plugin::ConfigAuto adds easy access to config file variables
+to your L<CGI::Application|CGI::Application> modules. Lazy loading is used to
+prevent the config file from being parsed if no configuration variables are
+accessed during the request. In other words, the config file is not parsed
+until it is actually needed. The L<Config::Auto|Config::Auto> package provides
+the framework for this plugin.
+
+=head1 RATIONALE
+
+C<CGI::Application> promotes re-usable applications by moving a maximal amount
+of code into modules. For an application to be fully re-usable without code changes,
+it is also necessary to store configuration variables in a separate file.
+
+This plugin supports multiple config files for a single application, allowing
+config files to override each other in a particular order. This covers even
+complex cases, where you have a global config file, and second local config
+file which overrides a few variables.
+
+It is recommended that you to declare your config file locations in the
+instance scripts, where it will have minimum impact on your application. This
+technique is ideal when you intend to reuse your module to support multiple
+configuration files. If you have an application with multiple instance scripts
+which share a single config file, you may prefer to call the plugin from the
+setup() method.
+
+=head1 DECLARING CONFIG FILE LOCATIONS
+
+ # In your instance script
+ # value can also be an arrayref of config files
+ my $app = WebApp->new(PARAMS => { cfg_file => 'config.pl' })
+
+ # OR ...
+
+ # Pass in an array of config files, and they will be processed in order.
+ $app->cfg_file('../../config/config.pl');
+
+Your config files should be referenced using the syntax example above. Note
+that the key C<config_files> can be used as alternative to cfg_file.
+
+
+
+
+The format is detected automatically using L<Config::Auto|Config::Auto>. It it
+known to support the following formats: colon separated, space separated,
+equals separated, XML, Perl code, and Windows INI. See that modules
+documentation for complete details.
+
+=head1 METHODS
+
+=head2 cfg()
+
+ # Access a config hash key directly
+ $self->cfg('field');
+
+ # Return config as hash
+ my %CFG = $self->cfg;
+
+ # return as hashref
+ my $cfg_href = $self->cfg;
+
+A method to access project configuration variables. The config
+file is parsed on the first call with a perl hash representation stored in memory.
+Subsequent calls will use this version, rather than re-reading the file.
+
+In list context, it returns the configuration data as a hash.
+In scalar context, it returns the configuration data as a hashref.
+
+=head2 config()
+
+L<CGI::Application::Standard::Config/config()> is provided as an alias to cfg() for compliance with
+L<CGI::Application::Standard::Config>. It always exported by default per the
+standard.
+
+=head2 std_config()
+
+L<CGI::Application::Standard::Config/std_config()> is implemented to comply with L<CGI::Application::Standard::Config>. It's
+for developers. Users can ignore it.
+
+=cut
+
+sub cfg {
+ my $self = shift;
+
+ if (!$self->{__CFG}) {
+ require Config::Auto;
+
+ unless ($self->{__CFG_FILES}) {
+ my @all_cfg_files;
+ for my $key (qw/cfg_file config_files/) {
+ my $cfg_file = $self->param($key);
+ if (defined $cfg_file) {
+ push @all_cfg_files, @$cfg_file if (ref $cfg_file eq 'ARRAY');
+ push @all_cfg_files, $cfg_file if (ref \$cfg_file eq 'SCALAR');
+ }
+ }
+
+ # Non-standard call syntax for mix-in happiness.
+ cfg_file($self, at all_cfg_files);
+ }
+
+ # Read in config files in the order the appear in this array.
+ my %combined_cfg;
+ for (my $i = 0; $i < scalar @{ $self->{__CFG_FILES} }; $i++) {
+ my $file = $self->{__CFG_FILES}[$i];
+ my %parms;
+ if (ref $self->{__CFG_FILES}[$i+1] eq 'HASH') {
+ %parms = %{ $self->{__CFG_FILES}[$i+1] };
+ # skip trying to process the hashref as a file name
+ $i++;
+ }
+ my $cfg = Config::Auto::parse($file, %parms);
+ %combined_cfg = (%combined_cfg, %$cfg);
+ }
+ die "No configuration found. Check your config file(s) (check the syntax if this is a perl format)."
+ unless keys %combined_cfg;
+
+ $self->{__CFG} = \%combined_cfg;
+ }
+
+ my $cfg = $self->{__CFG};
+ my $field = shift;
+ return $cfg->{$field} if $field;
+ if (ref $cfg) {
+ return wantarray ? %$cfg : $cfg;
+ }
+}
+
+=head2 cfg_file()
+
+ # Usual
+ $self->cfg_file('my_config_file.pl');
+
+ # Supply the first format, guess the second
+ $self->cfg_file('my_config_file.pl',{ format => 'perl' } );
+
+Supply an array of config files, and they will be processed in order. If a
+hash reference if found it, will be used to supply the format for the previous
+file in the array.
+
+=cut
+
+sub cfg_file {
+ my $self = shift;
+ my @cfg_files = @_;
+ unless (scalar @cfg_files) { croak "cfg_file: must have at least one config file." }
+ $self->{__CFG_FILES} = \@cfg_files;
+}
+
+
+1;
+__END__
+
+=pod
+
+=head1 FILE FORMAT HINTS
+
+=head2 Perl
+
+Here's a simple example of my favorite config file format: Perl.
+Having the "shebang" line at the top helps C<Config::Auto> to identify
+it as a Perl file. Also, be sure that your last statement returns a
+hash reference.
+
+ #!/usr/bin/perl
+
+ my %CFG = ();
+
+ # directory path name
+ $CFG{DIR} = '/home/mark/www';
+
+ # website URL
+ $CFG{URL} = 'http://mark.stosberg.com/';
+
+ \%CFG;
+
+=head1 SEE ALSO
+
+L<CGI::Application|CGI::Application>
+L<CGI::Application::Plugin::ValidateRM|CGI::Application::Plugin::ValidateRM>
+L<CGI::Application::Plugin::DBH|CGI::Application::Plugin::DBH>
+L<CGI::Application::Standard::Config|CGI::Application::Standard::Config>.
+perl(1)
+
+=head1 AUTHOR
+
+Mark Stosberg C<< mark at summersault.com >>
+
+=head1 LICENSE
+
+Copyright (C) 2004 - 2011 Mark Stosberg C<< mark at summersault.com >>
+
+This library is free software. You can modify and or distribute it under the same terms as Perl itself.
+
+=cut
+
Added: branches/upstream/libcgi-application-plugin-configauto-perl/current/t/TestAppBasic.pm
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libcgi-application-plugin-configauto-perl/current/t/TestAppBasic.pm?rev=75925&op=file
==============================================================================
--- branches/upstream/libcgi-application-plugin-configauto-perl/current/t/TestAppBasic.pm (added)
+++ branches/upstream/libcgi-application-plugin-configauto-perl/current/t/TestAppBasic.pm Sat Jun 18 09:34:52 2011
@@ -1,0 +1,24 @@
+package TestAppBasic;
+
+use strict;
+
+use CGI::Application;
+ at TestAppBasic::ISA = qw(CGI::Application);
+
+use CGI::Application::Plugin::ConfigAuto (qw/cfg cfg_file/);
+
+sub setup {
+ my $self = shift;
+
+ $self->start_mode('test_mode');
+
+ $self->run_modes(test_mode => 'test_mode' );
+}
+
+sub test_mode {
+ my $self = shift;
+ return 1;
+}
+
+
+1;
Added: branches/upstream/libcgi-application-plugin-configauto-perl/current/t/basic.t
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libcgi-application-plugin-configauto-perl/current/t/basic.t?rev=75925&op=file
==============================================================================
--- branches/upstream/libcgi-application-plugin-configauto-perl/current/t/basic.t (added)
+++ branches/upstream/libcgi-application-plugin-configauto-perl/current/t/basic.t Sat Jun 18 09:34:52 2011
@@ -1,0 +1,42 @@
+use Test::More qw/no_plan/;
+BEGIN { use_ok('CGI::Application::Plugin::ConfigAuto') };
+
+use lib './t';
+use strict;
+
+$ENV{CGI_APP_RETURN_ONLY} = 1;
+
+use TestAppBasic;
+my $t1_obj = TestAppBasic->new();
+ $t1_obj->cfg_file('t/basic_config.pl','t/empty_config.pl');
+my $t1_output = $t1_obj->run();
+
+is($t1_obj->config('test_key_1'),11,'config(), accessing a field directly');
+
+ok($t1_obj->std_config(), 'std_config() is present');
+
+my %cfg = $t1_obj->cfg;
+
+is($cfg{test_key_2},22,'cfg(), returning whole hash');
+
+my $href = $t1_obj->cfg;
+
+is($href->{test_key_2},22,'cfg(), returning hashref');
+
+is($t1_obj->cfg->{test_key_2},22,'cfg(), accessing hash key directly via hashref');
+
+###
+
+my $t2_obj = TestAppBasic->new();
+ $t2_obj->cfg_file('t/basic_config.pl', {format => 'wrong'} );
+ eval { $t2_obj->cfg };
+ok($@,'death expected if cfg file format is wrong');
+
+ $t2_obj->cfg_file('t/basic_config.pl', {format => 'perl'} );
+ eval { $t2_obj->cfg };
+ is($@,'', 'correct file format works');
+
+ $t2_obj->cfg_file('t/empty_config.t','t/basic_config.pl', {format => 'perl'} );
+ eval { $t2_obj->cfg };
+ is($@,'', 'correct file format works with second file');
+
Added: branches/upstream/libcgi-application-plugin-configauto-perl/current/t/basic_config.pl
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libcgi-application-plugin-configauto-perl/current/t/basic_config.pl?rev=75925&op=file
==============================================================================
--- branches/upstream/libcgi-application-plugin-configauto-perl/current/t/basic_config.pl (added)
+++ branches/upstream/libcgi-application-plugin-configauto-perl/current/t/basic_config.pl Sat Jun 18 09:34:52 2011
@@ -1,0 +1,7 @@
+#!/usr/bin/perl
+
+my %CFG = (
+ test_key_1 => '11',
+ test_key_2 => '22',
+);
+\%CFG;
Added: branches/upstream/libcgi-application-plugin-configauto-perl/current/t/empty.t
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libcgi-application-plugin-configauto-perl/current/t/empty.t?rev=75925&op=file
==============================================================================
--- branches/upstream/libcgi-application-plugin-configauto-perl/current/t/empty.t (added)
+++ branches/upstream/libcgi-application-plugin-configauto-perl/current/t/empty.t Sat Jun 18 09:34:52 2011
@@ -1,0 +1,16 @@
+use Test::More qw/no_plan/;
+BEGIN { use_ok('CGI::Application::Plugin::ConfigAuto') };
+
+use lib './t';
+use strict;
+
+$ENV{CGI_APP_RETURN_ONLY} = 1;
+
+use TestAppBasic;
+my $t1_obj = TestAppBasic->new();
+eval { $t1_obj->cfg_file('t/empty_config.pl');
+ $t1_obj->cfg();
+};
+
+like ($@, qr/\QNo configuration found. Check your config file(s) (check the syntax if this is a perl format)/);
+
Added: branches/upstream/libcgi-application-plugin-configauto-perl/current/t/empty_config.pl
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libcgi-application-plugin-configauto-perl/current/t/empty_config.pl?rev=75925&op=file
==============================================================================
--- branches/upstream/libcgi-application-plugin-configauto-perl/current/t/empty_config.pl (added)
+++ branches/upstream/libcgi-application-plugin-configauto-perl/current/t/empty_config.pl Sat Jun 18 09:34:52 2011
@@ -1,0 +1,3 @@
+#!/usr/bin/perl
+my %cfg;
+\%cfg;
Added: branches/upstream/libcgi-application-plugin-configauto-perl/current/t/pod.t
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libcgi-application-plugin-configauto-perl/current/t/pod.t?rev=75925&op=file
==============================================================================
--- branches/upstream/libcgi-application-plugin-configauto-perl/current/t/pod.t (added)
+++ branches/upstream/libcgi-application-plugin-configauto-perl/current/t/pod.t Sat Jun 18 09:34:52 2011
@@ -1,0 +1,28 @@
+use Test::More;
+
+use File::Spec;
+use File::Find;
+use strict;
+
+eval {
+ require Test::Pod;
+ Test::Pod->import;
+};
+
+my @files;
+
+if ($@) {
+ plan skip_all => "Test::Pod required for testing POD";
+}
+else {
+ my $blib = File::Spec->catfile(qw(blib lib));
+ find(\&wanted, $blib);
+ plan tests => scalar @files;
+ foreach my $file (@files) {
+ pod_file_ok($file);
+ }
+}
+
+sub wanted {
+ push @files, $File::Find::name if /\.p(l|m|od)$/;
+}
More information about the Pkg-perl-cvs-commits
mailing list