]> BookStack Code Mirror - bookstack/commitdiff
Removed test web route, extracted text, added test
authorDan Brown <redacted>
Sun, 17 Jul 2022 09:18:24 +0000 (10:18 +0100)
committerDan Brown <redacted>
Sun, 17 Jul 2022 09:18:24 +0000 (10:18 +0100)
resources/lang/en/entities.php
resources/views/entities/list-item.blade.php
routes/web.php
tests/Entity/EntitySearchTest.php

index 27d67487a0b0cb3aaffe6adb71c70d10f11c73e5..aa353bdacb63e162a5e2ef829ea029a998d88b40 100644 (file)
@@ -24,6 +24,7 @@ return [
     'meta_updated_name' => 'Updated :timeLength by :user',
     'meta_owned_name' => 'Owned by :user',
     'entity_select' => 'Entity Select',
+    'entity_select_lack_permission' => 'You don\'t have the required permissions to select this item',
     'images' => 'Images',
     'my_recent_drafts' => 'My Recent Drafts',
     'my_recently_viewed' => 'My Recently Viewed',
index 5314c8446ce3b30822863cd5e4ec7865702c5dd0..2fadef1919360958f8acd014fd25116c62cac40d 100644 (file)
@@ -4,7 +4,7 @@
 
     @if($locked ?? false)
         <div class="text-warn my-xxs bold">
-            @icon('lock')You don't have the required permissions to select this item.
+            @icon('lock'){{ trans('entities.entity_select_lack_permission') }}
         </div>
     @endif
 
index 9b562703cc4346a70281302cfb804e46b1e494a3..5e16e5333e184f2f37a8f99b9e241a5deb0fd151 100644 (file)
@@ -38,13 +38,6 @@ use Illuminate\View\Middleware\ShareErrorsFromSession;
 Route::get('/status', [StatusController::class, 'show']);
 Route::get('/robots.txt', [HomeController::class, 'robots']);
 
-Route::get('/test', function() {
-    $book = \BookStack\Entities\Models\Book::query()->where('slug', '=', 'k5TrhXxaNb')->firstOrFail();
-    $builder= app()->make(\BookStack\Auth\Permissions\JointPermissionBuilder::class);
-    $builder->rebuildForEntity($book);
-    return 'finished';
-})->withoutMiddleware('web');
-
 // Authenticated routes...
 Route::middleware('auth')->group(function () {
 
index b535f5aaa7e177d08efb4717c5c761410aa1732d..55c54695eaed73522b3f8aff70e60f76a4171fef 100644 (file)
@@ -214,7 +214,7 @@ class EntitySearchTest extends TestCase
         $defaultListTest->assertDontSee($notVisitedPage->name);
     }
 
-    public function test_ajax_entity_serach_shows_breadcrumbs()
+    public function test_ajax_entity_search_shows_breadcrumbs()
     {
         $chapter = Chapter::first();
         $page = $chapter->pages->first();
@@ -230,6 +230,21 @@ class EntitySearchTest extends TestCase
         $chapterSearch->assertSee($chapter->book->getShortName(42));
     }
 
+    public function test_ajax_entity_search_reflects_items_without_permission()
+    {
+        $page = Page::query()->first();
+        $baseSelector = 'a[data-entity-type="page"][data-entity-id="' . $page->id . '"]';
+        $searchUrl = "/ajax/search/entities?permission=update&term=" . urlencode($page->name);
+
+        $resp = $this->asEditor()->get($searchUrl);
+        $resp->assertElementContains($baseSelector, $page->name);
+        $resp->assertElementNotContains($baseSelector, "You don't have the required permissions to select this item");
+
+        $resp = $this->actingAs($this->getViewer())->get($searchUrl);
+        $resp->assertElementContains($baseSelector, $page->name);
+        $resp->assertElementContains($baseSelector, "You don't have the required permissions to select this item");
+    }
+
     public function test_sibling_search_for_pages()
     {
         $chapter = Chapter::query()->with('pages')->first();