コード例 #1
0
ファイル: info.py プロジェクト: itskewpie/rally
 def _find_substitution(self, query):
     max_distance = min(3, len(query) / 4)
     scenarios = scenario_base.Scenario.list_benchmark_scenarios()
     scenario_groups = list(set(s.split(".")[0] for s in scenarios))
     scenario_methods = list(set(s.split(".")[1] for s in scenarios))
     deploy_engines = [cls.__name__ for cls in utils.itersubclasses(
                       deploy.EngineFactory)]
     server_providers = [cls.__name__ for cls in utils.itersubclasses(
                         serverprovider.ProviderFactory)]
     candidates = (scenarios + scenario_groups + scenario_methods +
                   deploy_engines + server_providers)
     suggestions = []
     # NOTE(msdubov): Incorrect query may either have typos or be truncated.
     for candidate in candidates:
         if ((utils.distance(query, candidate) <= max_distance or
              candidate.startswith(query))):
             suggestions.append(candidate)
     return suggestions
コード例 #2
0
ファイル: test_utils.py プロジェクト: linhuacheng/rally
 def test_distance_deletion(self):
     dist = utils.distance("abcde", "abc")
     self.assertEqual(2, dist)
コード例 #3
0
ファイル: test_utils.py プロジェクト: linhuacheng/rally
 def test_distance_insertion(self):
     dist = utils.distance("abcde", "ab__cde")
     self.assertEqual(2, dist)
コード例 #4
0
ファイル: test_utils.py プロジェクト: linhuacheng/rally
 def test_distance_replacement(self):
     dist = utils.distance("abcde", "__cde")
     self.assertEqual(2, dist)
コード例 #5
0
ファイル: test_utils.py プロジェクト: linhuacheng/rally
 def test_distance_equal_strings(self):
     dist = utils.distance("abcde", "abcde")
     self.assertEqual(0, dist)
コード例 #6
0
ファイル: test_utils.py プロジェクト: linhuacheng/rally
 def test_distance_empty_strings(self):
     dist = utils.distance("", "")
     self.assertEqual(0, dist)
コード例 #7
0
 def test_distance_deletion(self):
     dist = utils.distance("abcde", "abc")
     self.assertEqual(2, dist)
コード例 #8
0
 def test_distance_insertion(self):
     dist = utils.distance("abcde", "ab__cde")
     self.assertEqual(2, dist)
コード例 #9
0
 def test_distance_replacement(self):
     dist = utils.distance("abcde", "__cde")
     self.assertEqual(2, dist)
コード例 #10
0
 def test_distance_equal_strings(self):
     dist = utils.distance("abcde", "abcde")
     self.assertEqual(0, dist)
コード例 #11
0
 def test_distance_empty_strings(self):
     dist = utils.distance("", "")
     self.assertEqual(0, dist)