]> BookStack Code Mirror - bookstack/commitdiff
Added test to cover search frquency rank changes
authorDan Brown <redacted>
Tue, 9 Nov 2021 15:05:02 +0000 (15:05 +0000)
committerDan Brown <redacted>
Tue, 9 Nov 2021 15:05:02 +0000 (15:05 +0000)
tests/Entity/EntitySearchTest.php

index 8d2ef0fded27bf40f86760b1c9f45b6e4c5c25a8..c30bb1d99cd57edcc9d7078c5398ba1438d9bec1 100644 (file)
@@ -302,4 +302,22 @@ class EntitySearchTest extends TestCase
         $search->assertSeeText($page->name);
         $search->assertSee($page->getUrl());
     }
+
+    public function test_search_ranks_common_words_lower()
+    {
+        $this->newPage(['name' => 'Test page A', 'html' => '<p>dog biscuit dog dog</p>']);
+        $this->newPage(['name' => 'Test page B', 'html' => '<p>cat biscuit</p>']);
+
+        $search = $this->asEditor()->get('/search?term=cat+dog+biscuit');
+        $search->assertElementContains('.entity-list > .page', 'Test page A', 1);
+        $search->assertElementContains('.entity-list > .page', 'Test page B', 2);
+
+        for ($i = 0; $i < 2; $i++) {
+            $this->newPage(['name' => 'Test page ' . $i, 'html' => '<p>dog</p>']);
+        }
+
+        $search = $this->asEditor()->get('/search?term=cat+dog+biscuit');
+        $search->assertElementContains('.entity-list > .page', 'Test page B', 1);
+        $search->assertElementContains('.entity-list > .page', 'Test page A', 2);
+    }
 }