This commit is contained in:
TomasVotruba 2017-10-14 17:24:02 +02:00
parent f5c82bbf0c
commit 8f3c22a075

View File

@ -4,6 +4,11 @@ namespace Rector\DeprecationExtractor\RectorGuess;
final class RectorGuessFilter final class RectorGuessFilter
{ {
/**
* @var float
*/
private const MAX_RELATIVE_SIMIARITY = 0.05;
/** /**
* @param RectorGuess[] $rectorGuesses * @param RectorGuess[] $rectorGuesses
* @return RectorGuess[] * @return RectorGuess[]
@ -39,10 +44,12 @@ final class RectorGuessFilter
$filteredGuessedRectors = []; $filteredGuessedRectors = [];
foreach ($rectorGuesses as $rectorGuess) { foreach ($rectorGuesses as $rectorGuess) {
$maxSimilarity = strlen($rectorGuess->getMessage()) * self::MAX_RELATIVE_SIMIARITY;
foreach ($allMessages as $message) { foreach ($allMessages as $message) {
// experimental; maybe count from message length? // experimental
$levenshtein = levenshtein($rectorGuess->getMessage(), $message); $levenshtein = levenshtein($rectorGuess->getMessage(), $message);
if ($levenshtein !== 0 && $levenshtein < 10) { if ($levenshtein !== 0 && $levenshtein < $maxSimilarity) {
continue 2; continue 2;
} }
} }