function SearchMatchTestCase::_testQueryScores
Test the scoring abilities of the engine.
Verify if a query produces normalized, monotonous scores.
1 call to SearchMatchTestCase::_testQueryScores()
- SearchMatchTestCase::_testQueries in modules/
search/ search.test - Run predefine queries looking for indexed terms.
File
-
modules/
search/ search.test, line 229
Class
- SearchMatchTestCase
- Indexes content and queries it.
Code
function _testQueryScores($query, $set, $results) {
// Get result scores.
$scores = array();
foreach ($set as $item) {
$scores[] = $item->calculated_score;
}
// Check order.
$sorted = $scores;
sort($sorted);
$this->assertEqual($scores, array_reverse($sorted), "Query order '{$query}'");
// Check range.
$this->assertEqual(!count($scores) || min($scores) > 0.0 && max($scores) <= 1.0001, TRUE, "Query scoring '{$query}'");
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.