Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nextcloud/server.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJulius Härtl <jus@bitgrid.net>2022-08-24 11:36:57 +0300
committerJulius Härtl <jus@bitgrid.net>2022-08-24 11:36:57 +0300
commit64a748995817edbb09c41f7820ce78e71a42f96d (patch)
treea398fb456bb3ec57314256584df2b4fea8eb321f
parent03c8bf70674574146fbdbd86423161a3fe9a5136 (diff)
Fix SessionMiddlewareTest and cover new case with reopeningtests/fix-session-middleware
Signed-off-by: Julius Härtl <jus@bitgrid.net>
-rw-r--r--tests/lib/AppFramework/Middleware/SessionMiddlewareTest.php20
1 files changed, 17 insertions, 3 deletions
diff --git a/tests/lib/AppFramework/Middleware/SessionMiddlewareTest.php b/tests/lib/AppFramework/Middleware/SessionMiddlewareTest.php
index f9739044465..be684e36013 100644
--- a/tests/lib/AppFramework/Middleware/SessionMiddlewareTest.php
+++ b/tests/lib/AppFramework/Middleware/SessionMiddlewareTest.php
@@ -35,7 +35,7 @@ class SessionMiddlewareTest extends \Test\TestCase {
* @UseSession
*/
public function testSessionNotClosedOnBeforeController() {
- $session = $this->getSessionMock(0);
+ $session = $this->getSessionMock(0, 1);
$this->reflector->reflect($this, __FUNCTION__);
$middleware = new SessionMiddleware($this->reflector, $session);
@@ -53,8 +53,20 @@ class SessionMiddlewareTest extends \Test\TestCase {
$middleware->afterController($this->controller, __FUNCTION__, new Response());
}
+ /**
+ * @UseSession
+ */
+ public function testSessionReopenedAndClosedOnBeforeController() {
+ $session = $this->getSessionMock(1, 1);
+
+ $this->reflector->reflect($this, __FUNCTION__);
+ $middleware = new SessionMiddleware($this->reflector, $session);
+ $middleware->beforeController($this->controller, __FUNCTION__);
+ $middleware->afterController($this->controller, __FUNCTION__, new Response());
+ }
+
public function testSessionClosedOnBeforeController() {
- $session = $this->getSessionMock(1);
+ $session = $this->getSessionMock(0);
$this->reflector->reflect($this, __FUNCTION__);
$middleware = new SessionMiddleware($this->reflector, $session);
@@ -72,13 +84,15 @@ class SessionMiddlewareTest extends \Test\TestCase {
/**
* @return mixed
*/
- private function getSessionMock($expectedCloseCount) {
+ private function getSessionMock(int $expectedCloseCount, int $expectedReopenCount = 0) {
$session = $this->getMockBuilder('\OC\Session\Memory')
->disableOriginalConstructor()
->getMock();
$session->expects($this->exactly($expectedCloseCount))
->method('close');
+ $session->expects($this->exactly($expectedReopenCount))
+ ->method('reopen');
return $session;
}
}