|
|
@@ -0,0 +1,54 @@
|
|
|
+<?php
|
|
|
+/**
|
|
|
+ * CakePHP(tm) : Rapid Development Framework (https://cakephp.org)
|
|
|
+ * Copyright (c) Cake Software Foundation, Inc. (https://cakefoundation.org)
|
|
|
+ *
|
|
|
+ * Licensed under The MIT License
|
|
|
+ * For full copyright and license information, please see the LICENSE.txt
|
|
|
+ * Redistributions of files must retain the above copyright notice
|
|
|
+ *
|
|
|
+ * @copyright Copyright (c) Cake Software Foundation, Inc. (https://cakefoundation.org)
|
|
|
+ * @link https://cakephp.org CakePHP(tm) Project
|
|
|
+ * @since 3.5.2
|
|
|
+ * @license https://opensource.org/licenses/mit-license.php MIT License
|
|
|
+ */
|
|
|
+namespace TestApp;
|
|
|
+
|
|
|
+use Cake\Error\Middleware\ErrorHandlerMiddleware;
|
|
|
+use Cake\Http\BaseApplication;
|
|
|
+use Cake\Routing\Middleware\RoutingMiddleware;
|
|
|
+use TestApp\Middleware\ThrowsExceptionMiddleware;
|
|
|
+
|
|
|
+/**
|
|
|
+ * Simple Application class doing nothing that:
|
|
|
+ */
|
|
|
+class ApplicationWithExceptionsInMiddleware extends BaseApplication
|
|
|
+{
|
|
|
+ /**
|
|
|
+ * Bootstrap hook.
|
|
|
+ *
|
|
|
+ * Nerfed as this is for IntegrationTestCase testing.
|
|
|
+ *
|
|
|
+ * @return void
|
|
|
+ */
|
|
|
+ public function bootstrap()
|
|
|
+ {
|
|
|
+ // Do nothing.
|
|
|
+ }
|
|
|
+
|
|
|
+ public function middleware($middlewareQueue)
|
|
|
+ {
|
|
|
+ $middlewareQueue
|
|
|
+ // Catch any exceptions in the lower layers,
|
|
|
+ // and make an error page/response
|
|
|
+ ->add(ErrorHandlerMiddleware::class)
|
|
|
+
|
|
|
+ // Handle plugin/theme assets like CakePHP normally does.
|
|
|
+ ->add(ThrowsExceptionMiddleware::class)
|
|
|
+
|
|
|
+ // Add routing middleware.
|
|
|
+ ->add(new RoutingMiddleware($this));
|
|
|
+
|
|
|
+ return $middlewareQueue;
|
|
|
+ }
|
|
|
+}
|