From: mbeierl Date: Thu, 16 Aug 2018 02:29:15 +0000 (-0400) Subject: Fixing Suprious Exception X-Git-Tag: opnfv-7.0.stable.RC3~1 X-Git-Url: https://gerrit.opnfv.org/gerrit/gitweb?a=commitdiff_plain;h=5930150915999fd410d7a2da38723065bcf7c91f;p=storperf.git Fixing Suprious Exception When the results are too small to calculate the slope, an exception is reported in the logs. This change avoids triggering the exception criteria. Change-Id: Iae886cde6244e9077ff94812bd830c48adaef365 Signed-off-by: mbeierl --- diff --git a/docker/storperf-master/storperf/utilities/math.py b/docker/storperf-master/storperf/utilities/math.py index 2e78c9d..601ae37 100644 --- a/docker/storperf-master/storperf/utilities/math.py +++ b/docker/storperf-master/storperf/utilities/math.py @@ -133,6 +133,9 @@ def slope_series(data_series): avg = average(average_series) slp = slope(data_series) + if slp is None or avg is None: + return new_series + multiplier = float(len(data_series) + 1) / 2.0 - len(data_series) for index, _ in data_series: new_value = avg + (slp * multiplier) diff --git a/docker/storperf-master/tests/utilities_tests/math_slope_test.py b/docker/storperf-master/tests/utilities_tests/math_slope_test.py index 24d5cd7..5c286ad 100644 --- a/docker/storperf-master/tests/utilities_tests/math_slope_test.py +++ b/docker/storperf-master/tests/utilities_tests/math_slope_test.py @@ -21,6 +21,11 @@ class MathSlopeTest(unittest.TestCase): actual = Slope.slope([]) self.assertEqual(expected, actual) + def test_slope_one_series(self): + expected = None + actual = Slope.slope([[1, 0.0]]) + self.assertEqual(expected, actual) + def test_slope_integer_series(self): expected = 1.4 actual = Slope.slope([[1, 6], [2, 5], [3, 7], [4, 10]])