# HG changeset patch
# User Pierre-Yves David <pierre-yves.david@octobus.net>
# Date 1657264507 -7200
#      Fri Jul 08 09:15:07 2022 +0200
# Node ID 619b44b283eb7ffe3f0c3eab9b734ac0c2d3cbbe
# Parent  9e0d8921da9820975d7311d56569b891ede62fa0
auto-cases: cover all known benchmarks for each revision

Lets be more complete for now.

We aims at not running everything on everything, but lets have a denser coverage
for now. We don't really have long benchmarks for now.

diff --git a/scm-perf/poulpe-scheduler-bin/auto-cases b/scm-perf/poulpe-scheduler-bin/auto-cases
--- a/scm-perf/poulpe-scheduler-bin/auto-cases
+++ b/scm-perf/poulpe-scheduler-bin/auto-cases
@@ -151,13 +151,12 @@
     for i in range(size):
         h = random.choice(hashes)
         variants = list_mercurial_variants(base_dir, h)
-        compatible_datas = [d for d in datas if compatible_with(base_dir, d, h)]
-        yield Case(
-            h,
-            random.choice(variants),
-            random.choice(compatible_datas),
-            random.choice(benchmarks),
-        )
+        for v in variants:
+            for d in datas:
+                if not compatible_with(base_dir, d, h):
+                    continue
+                for b in benchmarks:
+                    yield Case(h, v, d, b)
 
 
 if __name__ == "__main__":