update distar url
[catagits/Catalyst-Runtime.git] / t / plack-middleware.t
1 use warnings;
2 use strict;
3
4 use FindBin;
5 use Test::More;
6 use HTTP::Request::Common;
7
8 use lib "$FindBin::Bin/lib";
9 use Catalyst::Test 'TestMiddleware';
10
11 ok my($res, $c) = ctx_request('/');
12
13 {
14   ok my $response = request GET $c->uri_for_action('/welcome'),
15     'got welcome from a catalyst controller';
16
17   is $response->content, 'Welcome to Catalyst',
18     'expected content body';
19 }
20
21 {
22   ok my $response = request GET $c->uri_for('/static/message.txt'),
23     'got welcome from a catalyst controller';
24
25   like $response->content, qr'static message',
26     'expected content body';
27 }
28
29 {
30   ok my $response = request GET $c->uri_for('/static2/message2.txt'),
31     'got welcome from a catalyst controller';
32
33   like $response->content, qr'static message',
34     'expected content body';
35 }
36
37 {
38   ok my $response = request GET $c->uri_for('/static3/message3.txt'),
39     'got welcome from a catalyst controller';
40
41   like $response->content, qr'static message',
42     'expected content body';
43 }
44
45 {
46   ok my $response = request GET $c->uri_for('/forced'),
47     'got welcome from a catalyst controller';
48
49   like $response->content, qr'forced message',
50     'expected content body';
51
52   ok $response->headers->{"x-runtime"}, "Got value for expected middleware";
53 }
54
55 {
56   my $total_mw = scalar(TestMiddleware->registered_middlewares);
57
58   TestMiddleware->setup_middleware;
59   TestMiddleware->setup_middleware;
60
61   my $post_mw = scalar(TestMiddleware->registered_middlewares);
62
63   is $total_mw, $post_mw, 'Calling ->setup_middleware does not re-add default middleware';
64 }
65
66 done_testing;