mirror of
				https://github.com/python/cpython.git
				synced 2025-11-04 07:31:38 +00:00 
			
		
		
		
	bpo-33901: Better test_dbm_gnu.test_reorganize() fix (GH-7795)
Fix test_dbm_gnu.test_reorganize() on macOS with gdbm 1.15: add a larger value to make sure that the file size changes.
This commit is contained in:
		
							parent
							
								
									c7f02a9659
								
							
						
					
					
						commit
						c44d8e5db6
					
				
					 2 changed files with 9 additions and 7 deletions
				
			
		| 
						 | 
				
			
			@ -72,9 +72,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.assertGreaterEqual(size1, size0)
 | 
			
		||||
        self.assertGreater(size1, size0)
 | 
			
		||||
 | 
			
		||||
        del self.g['x']
 | 
			
		||||
        # 'size' is supposed to be the same even after deleting an entry.
 | 
			
		||||
| 
						 | 
				
			
			@ -82,7 +86,7 @@ def test_reorganize(self):
 | 
			
		|||
 | 
			
		||||
        self.g.reorganize()
 | 
			
		||||
        size2 = os.path.getsize(filename)
 | 
			
		||||
        self.assertLessEqual(size2, size1)
 | 
			
		||||
        self.assertLess(size2, size1)
 | 
			
		||||
        self.assertGreaterEqual(size2, size0)
 | 
			
		||||
 | 
			
		||||
    def test_context_manager(self):
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,4 +1,2 @@
 | 
			
		|||
Fix test_dbm_gnu for gdbm 1.15. Using gdbm 1.15, creating a database creates
 | 
			
		||||
a file of 16 MiB. Adding a small entry and then modifying the small entry
 | 
			
		||||
doesn't change the file size. Modify test_dbm_gnu to be less strict: allow
 | 
			
		||||
that the file size doesn't change.
 | 
			
		||||
Fix test_dbm_gnu on macOS with gdbm 1.15: add a larger value to make sure that
 | 
			
		||||
the file size changes.
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue