]> BookStack Code Mirror - bookstack/blobdiff - tests/Api/SearchApiTest.php
ExportFormatter: Add book description and check for empty book and chapter descriptio...
[bookstack] / tests / Api / SearchApiTest.php
index 55ca0e00946f7270f210489bca3c063026a04f88..2a186e8d6328c4133b86eeb643d1436f40d5b78b 100644 (file)
@@ -36,6 +36,36 @@ class SearchApiTest extends TestCase
         $resp->assertJsonFragment(['name' => $uniqueTerm, 'type' => 'bookshelf']);
     }
 
+    public function test_all_endpoint_returns_entity_url()
+    {
+        $page = $this->entities->page();
+        $page->update(['name' => 'name with superuniquevalue within']);
+        $page->indexForSearch();
+
+        $resp = $this->actingAsApiAdmin()->getJson($this->baseEndpoint . '?query=superuniquevalue');
+        $resp->assertJsonFragment([
+            'type' => 'page',
+            'url'  => $page->getUrl(),
+        ]);
+    }
+
+    public function test_all_endpoint_returns_items_with_preview_html()
+    {
+        $book = $this->entities->book();
+        $book->forceFill(['name' => 'name with superuniquevalue within', 'description' => 'Description with superuniquevalue within'])->save();
+        $book->indexForSearch();
+
+        $resp = $this->actingAsApiAdmin()->getJson($this->baseEndpoint . '?query=superuniquevalue');
+        $resp->assertJsonFragment([
+            'type'         => 'book',
+            'url'          => $book->getUrl(),
+            'preview_html' => [
+                'name'    => 'name with <strong>superuniquevalue</strong> within',
+                'content' => 'Description with <strong>superuniquevalue</strong> within',
+            ],
+        ]);
+    }
+
     public function test_all_endpoint_requires_query_parameter()
     {
         $resp = $this->actingAsApiEditor()->get($this->baseEndpoint);