diff --git a/benchmarks/basic_commands.py b/benchmarks/basic_commands.py
index 49aa5eec015c270c396d80b230dba7b8a15f469c_YmVuY2htYXJrcy9iYXNpY19jb21tYW5kcy5weQ==..38865651f48727e070f3087860cdf4bbbefee454_YmVuY2htYXJrcy9iYXNpY19jb21tYW5kcy5weQ== 100644
--- a/benchmarks/basic_commands.py
+++ b/benchmarks/basic_commands.py
@@ -403,32 +403,42 @@
                  expected_return_code=0)
 
 
-#class CloneTimeSuite(BaseExchangeTimeSuite):
-#    # skip other repos since they are too big
-#    params = [['mercurial-2017'], ['local', 'ssh', 'http'], ['same'], [None, 'tip']]
-#
-#    timeout = 300
-#
-#    def setup(self, *args, **kwargs):
-#        super(CloneTimeSuite, self).setup(*args, **kwargs)
-#        tmpdir = os.path.join(REPOS_DIR, '.tmp')
-#        try:
-#            os.makedirs(tmpdir)
-#        except OSError as exc:
-#            if exc.errno != errno.EEXIST:
-#                raise
-#        self.tmp_clone_path = os.path.join(tmpdir, 'clone-{}'.format(
-#            os.path.basename(self.clone_path)))
-#        shutil.rmtree(self.tmp_clone_path, ignore_errors=True)
-#
-#    def teardown(self, *args, **kwargs):
-#        super(CloneTimeSuite, self).teardown(*args, **kwargs)
-#        shutil.rmtree(self.tmp_clone_path, ignore_errors=True)
-#
-#    def time_clone(self, *args, **kwargs):
-#        cmd = ['clone', '--pull']
-#        cmd.extend(self._remote_path_cmd(self.clone_path))
-#        cmd.append(self.tmp_clone_path)
-#        if self.rev:
-#            cmd.extend(['-r', self.rev])
-#        self.hg(*cmd)
+# class CloneTimeSuite(BaseExchangeMixin, BaseTestSuite):
+#     # skip other repos since they are too big
+#     param_names = BaseTestSuite.param_names + ['repo_type', 'revset']
+#     params = [['mercurial-2017'], ['local', 'ssh', 'http'], [None, 'tip']]
+
+#     timer = timeit.default_timer
+#     sample_time = 10
+#     timeout = 300
+
+#     def setup(self, *args, **kwargs):
+#         args = list(args)
+#         repo_name = args[self.param_names.index('repo')]
+#         revset = args.pop(-1)
+#         repo_type = args.pop(-1)
+#         super(CloneTimeSuite, self).setup(*args, **kwargs)
+#         self._setup_repo_type(repo_type)
+#         self._setup_revset(revset)
+#         tmpdir = os.path.join(REPOS_DIR, '.tmp')
+#         try:
+#             os.makedirs(tmpdir)
+#         except OSError as exc:
+#             if exc.errno != errno.EEXIST:
+#                 raise
+#         self.clone_path = os.path.join(REPOS_DIR, repo_name)
+#         self.tmp_clone_path = os.path.join(tmpdir, 'clone-{}'.format(
+#             os.path.basename(self.clone_path)))
+#         shutil.rmtree(self.tmp_clone_path, ignore_errors=True)
+
+#     def teardown(self, *args, **kwargs):
+#         self._teardown_repo_type()
+#         shutil.rmtree(self.tmp_clone_path, ignore_errors=True)
+
+#     def time_clone(self, *args, **kwargs):
+#         cmd = ['clone', '--pull']
+#         cmd.extend(self._remote_path_cmd(self.clone_path))
+#         cmd.append(self.tmp_clone_path)
+#         if self.rev:
+#             cmd.extend(['-r', self.rev])
+#         self.hg(*cmd)