aboutsummaryrefslogtreecommitdiff
path: root/tests/app
diff options
context:
space:
mode:
authorGravatar Alexis Degrugillier <github@ainw.org> 2015-04-22 00:24:22 -0400
committerGravatar Alexis Degrugillier <github@ainw.org> 2015-04-22 00:24:22 -0400
commitd229216cccbd746b46630a44fa508ef0367ea1a1 (patch)
tree2f1cb423946abb94c9ad637ef8100328657b76ce /tests/app
parent2a0d04dd0ec7f7a453cf15ef7846bca662335050 (diff)
Split the search into values
Before, the search was a single value. Now it is splited in chuncks when separated by spaces. Except if they are enclosed by single quotes or double quotes. For some reasons, the unit tests are working for both single and double quotes but the search box isn't. It is working only with single quotes. We need to investigate the reason of this behavior. See #823
Diffstat (limited to 'tests/app')
-rw-r--r--tests/app/Models/SearchTest.php68
1 files changed, 42 insertions, 26 deletions
diff --git a/tests/app/Models/SearchTest.php b/tests/app/Models/SearchTest.php
index 9e3ca6765..73ff56cc6 100644
--- a/tests/app/Models/SearchTest.php
+++ b/tests/app/Models/SearchTest.php
@@ -51,20 +51,21 @@ class SearchTest extends \PHPUnit_Framework_TestCase {
public function provideIntitleSearch() {
return array(
array('intitle:word1', 'word1', null),
- array('intitle:word1 word2', 'word1', 'word2'),
+ array('intitle:word1 word2', 'word1', array('word2')),
array('intitle:"word1 word2"', 'word1 word2', null),
array("intitle:'word1 word2'", 'word1 word2', null),
- array('word1 intitle:word2', 'word2', 'word1'),
- array('word1 intitle:word2 word3', 'word2', 'word1 word3'),
- array('word1 intitle:"word2 word3"', 'word2 word3', 'word1'),
- array("word1 intitle:'word2 word3'", 'word2 word3', 'word1'),
- array('intitle:word1 intitle:word2', 'word1', 'intitle:word2'),
- array('intitle: word1 word2', null, 'word1 word2'),
+ array('word1 intitle:word2', 'word2', array('word1')),
+ array('word1 intitle:word2 word3', 'word2', array('word1', 'word3')),
+ array('word1 intitle:"word2 word3"', 'word2 word3', array('word1')),
+ array("word1 intitle:'word2 word3'", 'word2 word3', array('word1')),
+ array('intitle:word1 intitle:word2', 'word1', array('intitle:word2')),
+ array('intitle: word1 word2', null, array('word1', 'word2')),
array('intitle:123', '123', null),
- array('intitle:"word1 word2" word3"', 'word1 word2', 'word3"'),
- array("intitle:'word1 word2' word3'", 'word1 word2', "word3'"),
+ array('intitle:"word1 word2" word3"', 'word1 word2', array('word3"')),
+ array("intitle:'word1 word2' word3'", 'word1 word2', array("word3'")),
array('intitle:"word1 word2\' word3"', "word1 word2' word3", null),
array("intitle:'word1 word2\" word3'", 'word1 word2" word3', null),
+ array("intitle:word1 'word2 word3' word4", 'word1', array('word2 word3', 'word4')),
);
}
@@ -86,20 +87,21 @@ class SearchTest extends \PHPUnit_Framework_TestCase {
public function provideAuthorSearch() {
return array(
array('author:word1', 'word1', null),
- array('author:word1 word2', 'word1', 'word2'),
+ array('author:word1 word2', 'word1', array('word2')),
array('author:"word1 word2"', 'word1 word2', null),
array("author:'word1 word2'", 'word1 word2', null),
- array('word1 author:word2', 'word2', 'word1'),
- array('word1 author:word2 word3', 'word2', 'word1 word3'),
- array('word1 author:"word2 word3"', 'word2 word3', 'word1'),
- array("word1 author:'word2 word3'", 'word2 word3', 'word1'),
- array('author:word1 author:word2', 'word1', 'author:word2'),
- array('author: word1 word2', null, 'word1 word2'),
+ array('word1 author:word2', 'word2', array('word1')),
+ array('word1 author:word2 word3', 'word2', array('word1', 'word3')),
+ array('word1 author:"word2 word3"', 'word2 word3', array('word1')),
+ array("word1 author:'word2 word3'", 'word2 word3', array('word1')),
+ array('author:word1 author:word2', 'word1', array('author:word2')),
+ array('author: word1 word2', null, array('word1', 'word2')),
array('author:123', '123', null),
- array('author:"word1 word2" word3"', 'word1 word2', 'word3"'),
- array("author:'word1 word2' word3'", 'word1 word2', "word3'"),
+ array('author:"word1 word2" word3"', 'word1 word2', array('word3"')),
+ array("author:'word1 word2' word3'", 'word1 word2', array("word3'")),
array('author:"word1 word2\' word3"', "word1 word2' word3", null),
array("author:'word1 word2\" word3'", 'word1 word2" word3', null),
+ array("author:word1 'word2 word3' word4", 'word1', array('word2 word3', 'word4')),
);
}
@@ -121,10 +123,11 @@ class SearchTest extends \PHPUnit_Framework_TestCase {
public function provideInurlSearch() {
return array(
array('inurl:word1', 'word1', null),
- array('inurl: word1', null, 'word1'),
+ array('inurl: word1', null, array('word1')),
array('inurl:123', '123', null),
- array('inurl:word1 word2', 'word1', 'word2'),
- array('inurl:"word1 word2"', '"word1', 'word2"'),
+ array('inurl:word1 word2', 'word1', array('word2')),
+ array('inurl:"word1 word2"', '"word1', array('word2"')),
+ array("inurl:word1 'word2 word3' word4", 'word1', array('word2 word3', 'word4')),
);
}
@@ -198,11 +201,12 @@ class SearchTest extends \PHPUnit_Framework_TestCase {
public function provideTagsSearch() {
return array(
array('#word1', array('word1'), null),
- array('# word1', null, '# word1'),
+ array('# word1', null, array('#', 'word1')),
array('#123', array('123'), null),
- array('#word1 word2', array('word1'), 'word2'),
- array('#"word1 word2"', array('"word1'), 'word2"'),
+ array('#word1 word2', array('word1'), array('word2')),
+ array('#"word1 word2"', array('"word1'), array('word2"')),
array('#word1 #word2', array('word1', 'word2'), null),
+ array("#word1 'word2 word3' word4", array('word1'), array('word2 word3', 'word4')),
);
}
@@ -257,7 +261,7 @@ class SearchTest extends \PHPUnit_Framework_TestCase {
'1172725200',
'1210564799',
array('word4', 'word5'),
- 'word6',
+ array('word6'),
),
array(
'word6 intitle:word2 inurl:word3 pubdate:2007-03-01/2008-05-11 #word4 author:word1 #word5 word7 date:2007-03-01/2008-05-11',
@@ -269,7 +273,19 @@ class SearchTest extends \PHPUnit_Framework_TestCase {
'1172725200',
'1210564799',
array('word4', 'word5'),
- 'word6 word7',
+ array('word6', 'word7'),
+ ),
+ array(
+ 'word6 intitle:word2 inurl:word3 pubdate:2007-03-01/2008-05-11 #word4 author:word1 #word5 "word7 word8" date:2007-03-01/2008-05-11',
+ 'word1',
+ '1172725200',
+ '1210564799',
+ 'word2',
+ 'word3',
+ '1172725200',
+ '1210564799',
+ array('word4', 'word5'),
+ array('word7 word8', 'word6'),
),
);
}