# HG changeset patch
# User Raphaël Gomès <rgomes@octobus.net>
# Date 1554213282 -7200
#      Tue Apr 02 15:54:42 2019 +0200
# Node ID b397e8948f7eb25851379d370c53b8f39f988eba
# Parent  ffe956840a1fd8928ee636156ac5413988e0c6fb
Skip tests for variant combinations that do not exist

Some repositories don't have all the variants that are tried.
Instead of getting a `KeyError`, we now just skip the
impossible combinations.

diff --git a/benchmarks/utils.py b/benchmarks/utils.py
--- a/benchmarks/utils.py
+++ b/benchmarks/utils.py
@@ -277,7 +277,14 @@
             self.project_dir = os.path.join(BASEDIR, 'mercurial')
             sys.path.insert(0, self.project_dir)
             self.hgpath = os.path.join(os.path.join(self.project_dir, 'hg'))
-        self.repo_name = self.get_repo_name(repo, **kwargs)
+
+        repo_name = self.get_repo_name(repo, **kwargs)
+        if repo_name is None:
+            raise NotImplementedError(
+                "This combination of parameters does not exist, skipping."
+            )
+
+        self.repo_name = repo_name
         self.repo_path = os.path.join(REPOS_DIR, self.repo_name)
 
         # Use a clean environ to run command
@@ -354,7 +361,7 @@
             variants[key] = value
 
         repo_hash_key = (repo, tuple(sorted(variants.items())))
-        repo_name = REPO_HASH_MAP[repo_hash_key]
+        repo_name = REPO_HASH_MAP.get(repo_hash_key)
         return repo_name
 
     def get_asv_rev(self):