*/
protected static $linkFilter;
+ protected static $NB_LINKS_REFDB = 7;
+
/**
* Instanciate linkFilter with ReferenceLinkDB data.
*/
public function testFilter()
{
$this->assertEquals(
- 7,
+ self::$NB_LINKS_REFDB,
count(self::$linkFilter->filter('', ''))
);
2,
count(self::$linkFilter->filter('', '', false, true))
);
+
+ $this->assertEquals(
+ self::$NB_LINKS_REFDB,
+ count(self::$linkFilter->filter(LinkFilter::$FILTER_TAG, ''))
+ );
+
+ $this->assertEquals(
+ self::$NB_LINKS_REFDB,
+ count(self::$linkFilter->filter(LinkFilter::$FILTER_TEXT, ''))
+ );
}
/**
count(self::$linkFilter->filter(LinkFilter::$FILTER_TAG, '-free'))
);
}
+
+ /**
+ * Test crossed search (terms + tags).
+ */
+ public function testFilterCrossedSearch()
+ {
+ $terms = '"Free Software " stallman "read this" @website stuff';
+ $tags = 'free';
+ $this->assertEquals(
+ 1,
+ count(self::$linkFilter->filter(
+ LinkFilter::$FILTER_TAG | LinkFilter::$FILTER_TEXT,
+ array($tags, $terms)
+ ))
+ );
+ $this->assertEquals(
+ 2,
+ count(self::$linkFilter->filter(
+ LinkFilter::$FILTER_TAG | LinkFilter::$FILTER_TEXT,
+ array('', $terms)
+ ))
+ );
+ $this->assertEquals(
+ 1,
+ count(self::$linkFilter->filter(
+ LinkFilter::$FILTER_TAG | LinkFilter::$FILTER_TEXT,
+ array($tags, '')
+ ))
+ );
+ $this->assertEquals(
+ self::$NB_LINKS_REFDB,
+ count(self::$linkFilter->filter(
+ LinkFilter::$FILTER_TAG | LinkFilter::$FILTER_TEXT,
+ ''
+ ))
+ );
+ }
}