]> BookStack Code Mirror - bookstack/blobdiff - tests/Entity/EntitySearchTest.php
Page Attachments - Improved UI, Now initially complete
[bookstack] / tests / Entity / EntitySearchTest.php
index 6b313e7b82aa58d74a3f81f846cbd5bde6ac6856..8adfd35a3e3c59037c2cb8e8e1f7574bf46adc66 100644 (file)
@@ -76,10 +76,28 @@ class EntitySearchTest extends TestCase
             ->see('Chapter Search Results')->seeInElement('.entity-list', $chapter->name);
     }
 
+    public function test_search_quote_term_preparation()
+    {
+        $termString = '"192" cat "dog hat"';
+        $repo = $this->app[\BookStack\Repos\EntityRepo::class];
+        $preparedTerms = $repo->prepareSearchTerms($termString);
+        $this->assertTrue($preparedTerms === ['"192"','"dog hat"', 'cat']);
+    }
+
     public function test_books_search_listing()
     {
         $book = \BookStack\Book::all()->last();
         $this->asAdmin()->visit('/search/books?term=' . $book->name)
             ->see('Book Search Results')->see('.entity-list', $book->name);
     }
+
+    public function test_ajax_entity_search()
+    {
+        $page = \BookStack\Page::all()->last();
+        $notVisitedPage = \BookStack\Page::first();
+        $this->visit($page->getUrl());
+        $this->asAdmin()->visit('/ajax/search/entities?term=' . $page->name)->see('.entity-list', $page->name);
+        $this->asAdmin()->visit('/ajax/search/entities?types=book&term=' . $page->name)->dontSee('.entity-list', $page->name);
+        $this->asAdmin()->visit('/ajax/search/entities')->see('.entity-list', $page->name)->dontSee($notVisitedPage->name);
+    }
 }