Revision history for Perl extension Catalyst::Plugin::Static::Simple
+ - Fix issues in debug mode. (RT#53338)
+
0.27 2010-01-03 14:49:00
- Switch to being a Moose role, removing dependencies on
Class::Data::Inheritable and Class::Accessor (Andrey Kostenko in
requires 'MIME::Types' => '1.25';
requires 'Test::More';
requires 'Moose';
+requires 'MooseX::Types';
requires 'namespace::autoclean';
test_requires 'Test::More';
use File::Spec ();
use IO::File ();
use MIME::Types ();
+use MooseX::Types::Moose qw/ArrayRef Str/;
use namespace::autoclean;
our $VERSION = '0.27';
has _static_file => ( is => 'rw' );
-has _static_debug_message => ( is => 'rw', isa => 'Str' );
+has _static_debug_message => ( is => 'rw', isa => ArrayRef[Str] );
before prepare_action => sub {
my $c = shift;
--- /dev/null
+#!perl\r
+\r
+use strict;\r
+use warnings;\r
+\r
+use FindBin;\r
+use lib "$FindBin::Bin/lib";\r
+\r
+use Test::More tests => 5;\r
+use Catalyst::Test 'TestApp';\r
+\r
+# test defined static dirs\r
+TestApp->config->{static}->{dirs} = [\r
+ 'always-static',\r
+];\r
+\r
+TestApp->config->{static}->{debug} = 1;\r
+\r
+use Catalyst::Log;\r
+\r
+local *Catalyst::Log::_send_to_log;\r
+local our @MESSAGES;\r
+{\r
+ no warnings 'redefine';\r
+ *Catalyst::Log::_send_to_log = sub {\r
+ my $self = shift;\r
+ push @MESSAGES, @_;\r
+ };\r
+}\r
+\r
+\r
+# a missing file in a defined static dir will return 404 and text/html\r
+ok( my $res = request('http://localhost/always-static/404.txt'), 'request ok' );\r
+is( $res->code, 404, '404 ok' );\r
+is( $res->content_type, 'text/html', '404 is text/html' );\r
+ok(defined $MESSAGES[0], 'debug message set');\r
+like( $MESSAGES[0], qr/404/, 'debug message contains 404'); \r
+\r