Skip to content
Snippets Groups Projects
Commit 5ed42287 authored by Jean-Paul Calderone's avatar Jean-Paul Calderone
Browse files

fix wacko timedelta strategies

parent 63c88d4b
No related branches found
No related tags found
1 merge request!255Add configuration for lease maintenance behavior
...@@ -350,19 +350,29 @@ def client_errorredeemer_configurations(details): ...@@ -350,19 +350,29 @@ def client_errorredeemer_configurations(details):
) )
def integer_seconds_timedeltas(
# Our intervals mostly want to be non-negative.
min_value=0,
# We can't make this value too large or it isn't convertable to a
# timedelta. Also, even values as large as this one are of
# questionable value for the durations we measure.
max_value=60 * 60 * 24 * 365,
):
"""
Build ``timedelta`` instances without a fractional seconds part.
"""
return integers(
min_value=min_value,
max_value=max_value,
).map(lambda n: timedelta(seconds=n))
def interval_means(): def interval_means():
""" """
Build timedeltas representing the mean time between lease maintenance Build timedeltas representing the mean time between lease maintenance
runs. runs.
""" """
return integers( return integer_seconds_timedeltas()
# It doesn't make sense to have a negative check interval mean.
min_value=0,
# We can't make this value too large or it isn't convertable to a
# timedelta. Also, even values as large as this one are of
# questionable value.
max_value=60 * 60 * 24 * 365,
).map(timedelta)
def lease_maintenance_configurations(): def lease_maintenance_configurations():
...@@ -372,8 +382,8 @@ def lease_maintenance_configurations(): ...@@ -372,8 +382,8 @@ def lease_maintenance_configurations():
return builds( return builds(
LeaseMaintenanceConfig, LeaseMaintenanceConfig,
interval_means(), interval_means(),
integers(min_value=0, max_value=60 * 60 * 24 * 365).map(timedelta), integer_seconds_timedeltas(),
integers(min_value=0, max_value=60 * 60 * 24 * 365).map(timedelta), integer_seconds_timedeltas(),
) )
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment