From: Yuval Kogman Date: Tue, 31 Jul 2007 15:06:46 +0000 (+0000) Subject: foo X-Git-Tag: v0.05~3 X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=catagits%2FCatalyst-Plugin-Cache.git;a=commitdiff_plain;h=22954d19c3895364494dbfb95758a12977a3c2ee foo --- diff --git a/lib/Catalyst/Plugin/Cache.pm b/lib/Catalyst/Plugin/Cache.pm index 8b8fb71..78fe084 100644 --- a/lib/Catalyst/Plugin/Cache.pm +++ b/lib/Catalyst/Plugin/Cache.pm @@ -6,7 +6,7 @@ use base qw/Class::Data::Inheritable Class::Accessor::Fast/; use strict; use warnings; -our $VERSION = "0.03"; +our $VERSION = "0.04"; use Scalar::Util (); use Catalyst::Utils (); @@ -81,7 +81,11 @@ sub setup_generic_cache_backend { my %config = %$config; if ( my $class = delete $config{class} ) { - $app->setup_cache_backend_by_class( $name, $class, \%config ); + eval { $app->setup_cache_backend_by_class( $name, $class, %config ) } + || + eval { $app->setup_cache_backend_by_class( $name, $class, \%config ) } + || + die "Couldn't construct $class with either list style or hash ref style param passing: $@"; } elsif ( my $store = delete $config->{store} || $app->default_cache_store ) { my $method = lc("setup_${store}_cache_backend"); diff --git a/t/config_backend_class.t b/t/config_backend_class.t index 2ba772d..82812d2 100644 --- a/t/config_backend_class.t +++ b/t/config_backend_class.t @@ -14,6 +14,7 @@ use ok "Catalyst::Plugin::Cache"; package MyCache; sub new { my ( $class, $p ) = @_; + die unless ref $p; bless { %$p }, $class; } sub get {}