Fixed tag searches and added tag search regression test

Fixes #222
This commit is contained in:
Dan Brown 2016-11-12 13:21:16 +00:00
parent 672b15d36c
commit 600055bc73
No known key found for this signature in database
GPG key ID: 46D9F943C24A2EF9
3 changed files with 38 additions and 1 deletions

View file

@ -175,7 +175,8 @@ class Entity extends Ownable
}
}
$isFuzzy = count($exactTerms) === 0 || count($fuzzyTerms) > 0;
$isFuzzy = count($exactTerms) === 0 && count($fuzzyTerms) > 0;
// Perform fulltext search if relevant terms exist.
if ($isFuzzy) {

View file

@ -238,6 +238,9 @@
flex-direction: column;
overflow-y: scroll;
}
table td, table th {
overflow: visible;
}
}
[toolbox-tab-content] {

View file

@ -97,6 +97,39 @@ class EntitySearchTest extends TestCase
->seeStatusCode(200);
}
public function test_tag_search()
{
$newTags = [
new \BookStack\Tag([
'name' => 'animal',
'value' => 'cat'
]),
new \BookStack\Tag([
'name' => 'color',
'value' => 'red'
])
];
$pageA = \BookStack\Page::first();
$pageA->tags()->saveMany($newTags);
$pageB = \BookStack\Page::all()->last();
$pageB->tags()->create(['name' => 'animal', 'value' => 'dog']);
$this->asAdmin()->visit('/search/all?term=%5Banimal%5D')
->seeLink($pageA->name)
->seeLink($pageB->name);
$this->visit('/search/all?term=%5Bcolor%5D')
->seeLink($pageA->name)
->dontSeeLink($pageB->name);
$this->visit('/search/all?term=%5Banimal%3Dcat%5D')
->seeLink($pageA->name)
->dontSeeLink($pageB->name);
}
public function test_ajax_entity_search()
{
$page = \BookStack\Page::all()->last();