[Python-checkins] python/dist/src/Lib/bsddb/test test_associate.py, 1.7, 1.8

greg at users.sourceforge.net greg at users.sourceforge.net
Mon Jun 28 00:06:52 EDT 2004


Update of /cvsroot/python/python/dist/src/Lib/bsddb/test
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv11608/Lib/bsddb/test

Modified Files:
	test_associate.py 
Log Message:
Adds support for DB.pget and DBCursor.pget methods.

Based on a patch supplied by Ian Ward <ian at arevco.ca> on the pybsddb
mailing list 2004-03-26.


Index: test_associate.py
===================================================================
RCS file: /cvsroot/python/python/dist/src/Lib/bsddb/test/test_associate.py,v
retrieving revision 1.7
retrieving revision 1.8
diff -C2 -d -r1.7 -r1.8
*** test_associate.py	12 Feb 2004 17:35:08 -0000	1.7
--- test_associate.py	28 Jun 2004 04:06:49 -0000	1.8
***************
*** 84,87 ****
--- 84,88 ----
  53: ("David Lanz", "Heartsounds", "New Age"),
  54: ("David Lanz", "Leaves on the Seine", "New Age"),
+ 99: ("unknown artist", "Unnamed song", "Unknown"),
  }
  
***************
*** 118,121 ****
--- 119,123 ----
      def createDB(self):
          self.primary = db.DB(self.env)
+         self.primary.set_get_returns_none(2)
          self.primary.open(self.filename, "primary", self.dbtype,
                            db.DB_CREATE | db.DB_THREAD)
***************
*** 137,140 ****
--- 139,143 ----
          secDB = db.DB(self.env)
          secDB.set_flags(db.DB_DUP)
+         secDB.set_get_returns_none(2)
          secDB.open(self.filename, "secondary", db.DB_BTREE,
                     db.DB_CREATE | db.DB_THREAD)
***************
*** 167,170 ****
--- 170,183 ----
  
      def finish_test(self, secDB):
+         # 'Blues' should not be in the secondary database
+         vals = secDB.pget('Blues')
+         assert vals == None, vals
+ 
+         vals = secDB.pget('Unknown')
+         assert vals[0] == 99 or vals[0] == '99', vals
+         vals[1].index('Unknown')
+         vals[1].index('Unnamed')
+         vals[1].index('unknown')
+ 
          if verbose:
              print "Primary key traversal:"
***************
*** 188,191 ****
--- 201,216 ----
          c = secDB.cursor()
          count = 0
+ 
+         # test cursor pget
+         vals = c.pget('Unknown', flags=db.DB_LAST)
+         assert vals[1] == 99 or vals[1] == '99', vals
+         assert vals[0] == 'Unknown'
+         vals[2].index('Unknown')
+         vals[2].index('Unnamed')
+         vals[2].index('unknown')
+ 
+         vals = c.pget('Unknown', data='wrong value', flags=db.DB_GET_BOTH)
+         assert vals == None, vals
+ 
          rec = c.first()
          assert rec[0] == "Jazz"




More information about the Python-checkins mailing list