0258a098d295246ff500879d6e840fc52c87a6d4
[catagits/Catalyst-Runtime.git] / t / lib / Catalyst / Plugin / Test / Headers.pm
1 package Catalyst::Plugin::Test::Headers;
2
3 use strict;
4 use NEXT;
5
6 sub prepare {
7     my $class = shift;
8
9     my $c = $class->NEXT::prepare(@_);
10
11     $c->response->header( 'X-Catalyst-Engine' => $c->engine );
12     $c->response->header( 'X-Catalyst-Debug' => $c->debug ? 1 : 0 );
13     
14     {
15         my $components = join( ', ', sort keys %{ $c->components } );
16         $c->response->header( 'X-Catalyst-Components' => $components );
17     }
18
19     {
20         no strict 'refs';
21         my $plugins = join ', ', $class->registered_plugins;
22         $c->response->header( 'X-Catalyst-Plugins' => $plugins );
23     }
24
25     return $c;
26 }
27
28 sub prepare_action {
29     my $c = shift;
30     $c->NEXT::prepare_action(@_);
31     $c->res->header( 'X-Catalyst-Action' => $c->req->action );
32 }
33
34 1;