Mercurial > p > roundup > code
comparison test/memorydb.py @ 4347:0e33bf5571dc
make some more memorydb tests pass
| author | Richard Jones <richard@users.sourceforge.net> |
|---|---|
| date | Fri, 05 Feb 2010 05:10:52 +0000 |
| parents | 4dc575b33712 |
| children | f0faef4dd023 |
comparison
equal
deleted
inserted
replaced
| 4346:4dc575b33712 | 4347:0e33bf5571dc |
|---|---|
| 181 | 181 |
| 182 def filename(self, classname, nodeid, property=None, create=0): | 182 def filename(self, classname, nodeid, property=None, create=0): |
| 183 shutil.copyfile(__file__, __file__+'.dummy') | 183 shutil.copyfile(__file__, __file__+'.dummy') |
| 184 return __file__+'.dummy' | 184 return __file__+'.dummy' |
| 185 | 185 |
| 186 def filesize(self, classname, nodeid, property=None, create=0): | |
| 187 return len(self.getnode(classname, nodeid)[property or 'content']) | |
| 188 | |
| 186 def post_init(self): | 189 def post_init(self): |
| 187 pass | 190 pass |
| 188 | 191 |
| 189 def refresh_database(self): | 192 def refresh_database(self): |
| 190 pass | 193 pass |
| 267 # Node IDs | 270 # Node IDs |
| 268 # | 271 # |
| 269 def newid(self, classname): | 272 def newid(self, classname): |
| 270 self.ids[classname] += 1 | 273 self.ids[classname] += 1 |
| 271 return str(self.ids[classname]) | 274 return str(self.ids[classname]) |
| 275 def setid(self, classname, id): | |
| 276 self.ids[classname] = id | |
| 272 | 277 |
| 273 # | 278 # |
| 274 # Nodes | 279 # Nodes |
| 275 # | 280 # |
| 276 def addnode(self, classname, nodeid, node): | 281 def addnode(self, classname, nodeid, node): |
| 280 self.getclassdb(classname)[nodeid] = node | 285 self.getclassdb(classname)[nodeid] = node |
| 281 | 286 |
| 282 def getnode(self, classname, nodeid, db=None): | 287 def getnode(self, classname, nodeid, db=None): |
| 283 if db is not None: | 288 if db is not None: |
| 284 return db[nodeid] | 289 return db[nodeid] |
| 285 return self.getclassdb(classname)[nodeid] | 290 d = self.getclassdb(classname) |
| 291 if nodeid not in d: | |
| 292 raise IndexError(nodeid) | |
| 293 return d[nodeid] | |
| 286 | 294 |
| 287 def destroynode(self, classname, nodeid): | 295 def destroynode(self, classname, nodeid): |
| 288 del self.getclassdb(classname)[nodeid] | 296 del self.getclassdb(classname)[nodeid] |
| 289 | 297 |
| 290 def hasnode(self, classname, nodeid): | 298 def hasnode(self, classname, nodeid): |
| 326 def close(self): | 334 def close(self): |
| 327 pass | 335 pass |
| 328 | 336 |
| 329 class Class(back_anydbm.Class): | 337 class Class(back_anydbm.Class): |
| 330 def getnodeids(self, db=None, retired=None): | 338 def getnodeids(self, db=None, retired=None): |
| 331 return self.db.getclassdb(self.classname).keys() | 339 d = self.db.getclassdb(self.classname) |
| 340 if retired is None: | |
| 341 return d.keys() | |
| 342 return [k for k in d if d[k].get(self.db.RETIRED_FLAG, False) == retired] | |
| 332 | 343 |
| 333 class FileClass(back_anydbm.Class): | 344 class FileClass(back_anydbm.Class): |
| 334 def __init__(self, db, classname, **properties): | 345 def __init__(self, db, classname, **properties): |
| 335 if not properties.has_key('content'): | 346 if not properties.has_key('content'): |
| 336 properties['content'] = hyperdb.String(indexme='yes') | 347 properties['content'] = hyperdb.String(indexme='yes') |
