summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--apps/files/lib/Controller/ViewController.php7
-rw-r--r--apps/files/tests/Controller/ViewControllerTest.php10
2 files changed, 10 insertions, 7 deletions
diff --git a/apps/files/lib/Controller/ViewController.php b/apps/files/lib/Controller/ViewController.php
index 9d26c048368..db8f32ddf73 100644
--- a/apps/files/lib/Controller/ViewController.php
+++ b/apps/files/lib/Controller/ViewController.php
@@ -143,15 +143,14 @@ class ViewController extends Controller {
* @param string $dir
* @param string $view
* @param string $fileid
- * @return TemplateResponse
+ * @return TemplateResponse|RedirectResponse
*/
- public function index($dir = '', $view = '', $fileid = null) {
- $fileNotFound = false;
+ public function index($dir = '', $view = '', $fileid = null, $fileNotFound = false) {
if ($fileid !== null) {
try {
return $this->showFile($fileid);
} catch (NotFoundException $e) {
- $fileNotFound = true;
+ return new RedirectResponse($this->urlGenerator->linkToRoute('files.view.index', ['fileNotFound' => true]));
}
}
diff --git a/apps/files/tests/Controller/ViewControllerTest.php b/apps/files/tests/Controller/ViewControllerTest.php
index 0ffe66c5592..b4b4bfa92fc 100644
--- a/apps/files/tests/Controller/ViewControllerTest.php
+++ b/apps/files/tests/Controller/ViewControllerTest.php
@@ -348,10 +348,14 @@ class ViewControllerTest extends TestCase {
->with(123)
->will($this->returnValue([]));
+ $this->urlGenerator->expects($this->once())
+ ->method('linkToRoute')
+ ->with('files.view.index', ['fileNotFound' => true])
+ ->willReturn('redirect.url');
+
$response = $this->viewController->index('MyDir', 'MyView', '123');
- $this->assertInstanceOf('OCP\AppFramework\Http\TemplateResponse', $response);
- $params = $response->getParams();
- $this->assertEquals(1, $params['fileNotFound']);
+ $this->assertInstanceOf('OCP\AppFramework\Http\RedirectResponse', $response);
+ $this->assertEquals('redirect.url', $response->getRedirectURL());
}
public function testShowFileRouteWithTrashedFile() {