diff options
Diffstat (limited to 'tests/LinkFilterTest.php')
-rw-r--r-- | tests/LinkFilterTest.php | 51 |
1 files changed, 45 insertions, 6 deletions
diff --git a/tests/LinkFilterTest.php b/tests/LinkFilterTest.php index 4d754d25..31fd4cf4 100644 --- a/tests/LinkFilterTest.php +++ b/tests/LinkFilterTest.php | |||
@@ -165,6 +165,17 @@ class LinkFilterTest extends PHPUnit_Framework_TestCase | |||
165 | } | 165 | } |
166 | 166 | ||
167 | /** | 167 | /** |
168 | * Full-text search - no result found. | ||
169 | */ | ||
170 | public function testFilterFullTextNoResult() | ||
171 | { | ||
172 | $this->assertEquals( | ||
173 | 0, | ||
174 | count(self::$linkFilter->filter(LinkFilter::$FILTER_TEXT, 'azertyuiop')) | ||
175 | ); | ||
176 | } | ||
177 | |||
178 | /** | ||
168 | * Full-text search - result from a link's URL | 179 | * Full-text search - result from a link's URL |
169 | */ | 180 | */ |
170 | public function testFilterFullTextURL() | 181 | public function testFilterFullTextURL() |
@@ -262,28 +273,56 @@ class LinkFilterTest extends PHPUnit_Framework_TestCase | |||
262 | { | 273 | { |
263 | $this->assertEquals( | 274 | $this->assertEquals( |
264 | 1, | 275 | 1, |
265 | count(self::$linkFilter->filter(LinkFilter::$FILTER_TEXT, 'free -software')) | 276 | count(self::$linkFilter->filter(LinkFilter::$FILTER_TEXT, 'free -gnu')) |
266 | ); | 277 | ); |
267 | 278 | ||
268 | $this->assertEquals( | 279 | $this->assertEquals( |
269 | 7, | 280 | 6, |
270 | count(self::$linkFilter->filter(LinkFilter::$FILTER_TEXT, '-software')) | 281 | count(self::$linkFilter->filter(LinkFilter::$FILTER_TEXT, '-revolution')) |
271 | ); | 282 | ); |
272 | } | 283 | } |
273 | 284 | ||
274 | /** | 285 | /** |
275 | * Full-text search - test AND, exact terms and exclusion combined. | 286 | * Full-text search - test AND, exact terms and exclusion combined, across fields. |
276 | */ | 287 | */ |
277 | public function testMultiSearch() | 288 | public function testMultiSearch() |
278 | { | 289 | { |
279 | $this->assertEquals( | 290 | $this->assertEquals( |
280 | 2, | 291 | 2, |
281 | count(self::$linkFilter->filter(LinkFilter::$FILTER_TEXT, '"Free Software " stallman "read this"')) | 292 | count(self::$linkFilter->filter( |
293 | LinkFilter::$FILTER_TEXT, | ||
294 | '"Free Software " stallman "read this" @website stuff' | ||
295 | )) | ||
282 | ); | 296 | ); |
283 | 297 | ||
284 | $this->assertEquals( | 298 | $this->assertEquals( |
285 | 1, | 299 | 1, |
286 | count(self::$linkFilter->filter(LinkFilter::$FILTER_TEXT, '"free software " stallman "read this" -beard')) | 300 | count(self::$linkFilter->filter( |
301 | LinkFilter::$FILTER_TEXT, | ||
302 | '"free software " stallman "read this" -beard @website stuff' | ||
303 | )) | ||
304 | ); | ||
305 | } | ||
306 | |||
307 | /** | ||
308 | * Full-text search - make sure that exact search won't work across fields. | ||
309 | */ | ||
310 | public function testSearchExactTermMultiFieldsKo() | ||
311 | { | ||
312 | $this->assertEquals( | ||
313 | 0, | ||
314 | count(self::$linkFilter->filter( | ||
315 | LinkFilter::$FILTER_TEXT, | ||
316 | '"designer naming"' | ||
317 | )) | ||
318 | ); | ||
319 | |||
320 | $this->assertEquals( | ||
321 | 0, | ||
322 | count(self::$linkFilter->filter( | ||
323 | LinkFilter::$FILTER_TEXT, | ||
324 | '"designernaming"' | ||
325 | )) | ||
287 | ); | 326 | ); |
288 | } | 327 | } |
289 | 328 | ||