diff --git a/Lib/test/test_gdbm.py b/Lib/test/test_gdbm.py index e9169a24e7ea76..c4a498fec915e8 100644 --- a/Lib/test/test_gdbm.py +++ b/Lib/test/test_gdbm.py @@ -62,9 +62,13 @@ def test_reorganize(self): self.g = gdbm.open(filename, 'c') size0 = os.path.getsize(filename) - self.g['x'] = 'x' * 10000 + # bpo-33901: on macOS with gdbm 1.15, an empty database uses 16 MiB + # and adding an entry of 10,000 B has no effect on the file size. + # Add size0 bytes to make sure that the file size changes. + value_size = max(size0, 10000) + self.g['x'] = 'x' * value_size size1 = os.path.getsize(filename) - self.assertTrue(size0 < size1) + self.assertGreater(size1, size0) del self.g['x'] # 'size' is supposed to be the same even after deleting an entry. @@ -72,7 +76,8 @@ def test_reorganize(self): self.g.reorganize() size2 = os.path.getsize(filename) - self.assertTrue(size1 > size2 >= size0) + self.assertLess(size2, size1) + self.assertGreaterEqual(size2, size0) def test_main(): diff --git a/Misc/NEWS.d/next/Tests/2018-06-19-14-04-21.bpo-33901.OFW1Sr.rst b/Misc/NEWS.d/next/Tests/2018-06-19-14-04-21.bpo-33901.OFW1Sr.rst new file mode 100644 index 00000000000000..78244bb53b6f1f --- /dev/null +++ b/Misc/NEWS.d/next/Tests/2018-06-19-14-04-21.bpo-33901.OFW1Sr.rst @@ -0,0 +1,2 @@ +Fix test_gdbm on macOS with gdbm 1.15: add a larger value to make sure that +the file size changes.