# HG changeset patch
# User Pierre-Yves David <pierre-yves.david@octobus.net>
# Date 1535588200 -7200
#      Thu Aug 30 02:16:40 2018 +0200
# Node ID f85c91eabaebdb4fec5adc78739cd0d7d6d22577
# Parent  3dd6964fdd4eec44750ffccc92573826ed18e2c0
scheduling: use the new flexible repeat mechanism

We use the new options offered by upstream ASV. We use a 3 repeat minimum and
10 repeat max. Max time (before we give up on max repeat) is 60 seconds per
variants.

diff --git a/benchmarks/basic_commands.py b/benchmarks/basic_commands.py
--- a/benchmarks/basic_commands.py
+++ b/benchmarks/basic_commands.py
@@ -133,8 +133,6 @@
 class ArchiveTimeTestSuite(BaseTestSuite):
     # work-around repeat because mozilla central en netbeans are very slow
     # mercurial's own archive is about a second so it would use more run.
-    repeat = 3
-    number = 1
 
     timeout = 300
     param_names = TimeTestSuite.param_names + ['type']
@@ -373,8 +371,6 @@
 class PushPullTimeSuite(BaseExchangeTimeSuite):
 
     # Force setup to be called between two push or pull
-    number = 1
-    repeat = 20
     warmup_time = 0
 
     def setup(self, *args, **kwargs):
diff --git a/benchmarks/utils.py b/benchmarks/utils.py
--- a/benchmarks/utils.py
+++ b/benchmarks/utils.py
@@ -138,6 +138,8 @@
 
 class BaseTestSuite(object):
     timer = timeit.default_timer
+    repeat = (3, 10, 60.0)
+    number = 1
 
     params = [REPOS]
     param_names = ["repo"]