summaryrefslogtreecommitdiff
path: root/libs/jsonrpc/tests/MiddlewareHandlerTest.php
diff options
context:
space:
mode:
authorFrédéric Guillot <fred@kanboard.net>2018-06-21 14:13:41 -0700
committerFrédéric Guillot <fred@kanboard.net>2018-06-21 14:13:41 -0700
commita491348d442ab8e6cd2fa403d4365cdad78e52ce (patch)
treea00f575d82afb2c9051bad95398b4250f4a3d44d /libs/jsonrpc/tests/MiddlewareHandlerTest.php
parentc73ac5f1f818b6b21083f6785b4b2f6d778a6496 (diff)
Vendoring deprecated composer libs
Diffstat (limited to 'libs/jsonrpc/tests/MiddlewareHandlerTest.php')
-rw-r--r--libs/jsonrpc/tests/MiddlewareHandlerTest.php40
1 files changed, 40 insertions, 0 deletions
diff --git a/libs/jsonrpc/tests/MiddlewareHandlerTest.php b/libs/jsonrpc/tests/MiddlewareHandlerTest.php
new file mode 100644
index 00000000..be70cbf7
--- /dev/null
+++ b/libs/jsonrpc/tests/MiddlewareHandlerTest.php
@@ -0,0 +1,40 @@
+<?php
+
+use JsonRPC\Exception\AuthenticationFailureException;
+use JsonRPC\MiddlewareHandler;
+use JsonRPC\MiddlewareInterface;
+
+require_once __DIR__.'/../../../vendor/autoload.php';
+
+class FirstMiddleware implements MiddlewareInterface
+{
+ public function execute($username, $password, $procedureName)
+ {
+ }
+}
+
+class SecondMiddleware implements MiddlewareInterface
+{
+ public function execute($username, $password, $procedureName)
+ {
+ if ($username === 'myUsername' && $password === 'myPassword' && $procedureName === 'myProcedure') {
+ throw new AuthenticationFailureException('Bad user');
+ }
+ }
+}
+
+class MiddlewareHandlerTest extends PHPUnit_Framework_TestCase
+{
+ public function testMiddlewareCanRaiseException()
+ {
+ $this->setExpectedException('JsonRpc\Exception\AuthenticationFailureException');
+
+ $middlewareHandler = new MiddlewareHandler();
+ $middlewareHandler->withUsername('myUsername');
+ $middlewareHandler->withPassword('myPassword');
+ $middlewareHandler->withProcedure('myProcedure');
+ $middlewareHandler->withMiddleware(new FirstMiddleware());
+ $middlewareHandler->withMiddleware(new SecondMiddleware());
+ $middlewareHandler->execute();
+ }
+}