]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
bpo-44960: add regression test for geometric_mean with mixed int/floa… (#27856)
authorIrit Katriel <1055913+iritkatriel@users.noreply.github.com>
Fri, 20 Aug 2021 13:08:21 +0000 (14:08 +0100)
committerGitHub <noreply@github.com>
Fri, 20 Aug 2021 13:08:21 +0000 (14:08 +0100)
Co-authored-by: Mark Dickinson <dickinsm@gmail.com>
Lib/test/test_statistics.py

index a7cb0277269658af32e92fffb6115415c3a1e006..dc066fa921d797a84b68b5a8197cda25de1f246b 100644 (file)
@@ -2263,6 +2263,22 @@ class TestGeometricMean(unittest.TestCase):
         with self.assertRaises(ValueError):
             geometric_mean([Inf, -Inf])
 
+    def test_mixed_int_and_float(self):
+        # Regression test for b.p.o. issue #28327
+        geometric_mean = statistics.geometric_mean
+        expected_mean = 3.80675409583932
+        values = [
+            [2, 3, 5, 7],
+            [2, 3, 5, 7.0],
+            [2, 3, 5.0, 7.0],
+            [2, 3.0, 5.0, 7.0],
+            [2.0, 3.0, 5.0, 7.0],
+        ]
+        for v in values:
+            with self.subTest(v=v):
+                actual_mean = geometric_mean(v)
+                self.assertAlmostEqual(actual_mean, expected_mean, places=5)
+
 
 class TestQuantiles(unittest.TestCase):