look a failing test case...
[catagits/Catalyst-Runtime.git] / t / lib / TestMiddlewareFromConfig / testmiddlewarefromconfig.pl
diff --git a/t/lib/TestMiddlewareFromConfig/testmiddlewarefromconfig.pl b/t/lib/TestMiddlewareFromConfig/testmiddlewarefromconfig.pl
new file mode 100644 (file)
index 0000000..4df352d
--- /dev/null
@@ -0,0 +1,28 @@
+use Plack::Middleware::Static;
+
+my $static = Plack::Middleware::Static->new(
+  path => qr{^/static/}, root => TestMiddlewareFromConfig->path_to('share'));
+
+my $conf = +{
+  'Controller::Root', { namespace => '' },
+  'psgi_middleware', [
+    'Head',
+    $static,
+    'Static', { path => qr{^/static2/}, root => TestMiddlewareFromConfig->path_to('share') },
+    'Runtime',
+    '+TestMiddleware::Custom', { path => qr{^/static3/}, root => TestMiddlewareFromConfig->path_to('share') },
+    sub {
+      my $app = shift;
+      return sub {
+        my $env = shift;
+        if($env->{PATH_INFO} =~m/forced/) {
+          Plack::App::File->new(file=>TestMiddlewareFromConfig->path_to(qw/share static forced.txt/))
+            ->call($env);
+        } else {
+          return $app->($env);
+        }
+      },
+    },
+
+  ],
+};