Skip to content
Snippets Groups Projects
Commit b59a59eb authored by Pierre-Yves David's avatar Pierre-Yves David :octopus:
Browse files

benchmark: add large discovery tests

We expect these to make the rust code shine.
parent d4faef51
No related branches found
No related tags found
No related merge requests found
......@@ -108,3 +108,56 @@
def track_discovery_balanced(self, *args, **kwargs):
return self._track_discovery(self, *args, **kwargs)
track_discovery_balanced.benchmark_name = 'exchange.discovery.changesets.track_balanced'
@setup_role
class DiscoveryLargeSubsetTimeSuite(BaseDiscoveryTimeSuite):
"""This benchmark discovery when remote has stricly more data
This benchmark use `perfdiscovery` (see BaseDiscoveryTimeSuite).
Any repos should be elligible for "subset" discovery. We test it with
various amount of missing changesets locally.
"""
role_action = 'discovery'
role_subtype = 'large-subset'
@params_as_kwargs
def track_discovery_large_subset(self, *args, **kwargs):
return self._track_discovery(self, *args, **kwargs)
track_discovery_large_subset.benchmark_name = 'exchange.discovery.changesets.track_large_subset'
@setup_role
class DiscoveryLargeSupersetTimeSuite(BaseDiscoveryTimeSuite):
"""This benchmark discovery when remote has stricly less data
This benchmark use `perfdiscovery` (see BaseDiscoveryTimeSuite).
Any repos should be elligible for "superset" discovery. We test it with
various amount of missing changesets remotely.
"""
role_action = 'discovery'
role_subtype = 'large-superset'
@params_as_kwargs
def track_discovery_large_superset(self, *args, **kwargs):
return self._track_discovery(self, *args, **kwargs)
track_discovery_large_superset.benchmark_name = 'exchange.discovery.changesets.track_large_superset'
@setup_role
class DiscoveryLargeBalancedTimeSuite(BaseDiscoveryTimeSuite):
"""This benchmark discovery when local and remote has different content
This benchmark use `perfdiscovery` (see BaseDiscoveryTimeSuite).
Only a fews are eligible for "balanced" discovery. since it needs enough
different heads to create disparity on both side. The test it with various
amount of "reasonably sized" difference.
"""
role_action = 'discovery'
role_subtype = 'large-balanced'
@params_as_kwargs
def track_discovery_large_balanced(self, *args, **kwargs):
return self._track_discovery(self, *args, **kwargs)
track_discovery_large_balanced.benchmark_name = 'exchange.discovery.changesets.track_large_balanced'
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment