[Python-checkins] python/dist/src/Lib/test test_dumbdbm.py,1.8,1.9
tim_one@users.sourceforge.net
tim_one@users.sourceforge.net
Thu, 10 Jul 2003 21:09:11 -0700
Update of /cvsroot/python/python/dist/src/Lib/test
In directory sc8-pr-cvs1:/tmp/cvs-serv10247/Lib/test
Modified Files:
test_dumbdbm.py
Log Message:
Added a new randomized test.
Index: test_dumbdbm.py
===================================================================
RCS file: /cvsroot/python/python/dist/src/Lib/test/test_dumbdbm.py,v
retrieving revision 1.8
retrieving revision 1.9
diff -C2 -d -r1.8 -r1.9
*** test_dumbdbm.py 9 Aug 2002 16:37:35 -0000 1.8
--- test_dumbdbm.py 11 Jul 2003 04:09:09 -0000 1.9
***************
*** 87,90 ****
--- 87,118 ----
return keys
+ # Perform randomized operations. This doesn't make assumptions about
+ # what *might* fail.
+ def test_random(self):
+ import random
+ d = {} # mirror the database
+ for dummy in range(5):
+ f = dumbdbm.open(_fname)
+ for dummy in range(100):
+ k = random.choice('abcdefghijklm')
+ if random.random() < 0.2:
+ if k in d:
+ del d[k]
+ del f[k]
+ else:
+ v = random.choice('abc') * random.randrange(10000)
+ d[k] = v
+ f[k] = v
+ self.assertEqual(f[k], v)
+ f.close()
+
+ f = dumbdbm.open(_fname)
+ expected = d.items()
+ expected.sort()
+ got = f.items()
+ got.sort()
+ self.assertEqual(expected, got)
+ f.close()
+
def tearDown(self):
_delete_files()