* ..... ...igimin python class'leri ne newstyle ne oldstyle karistirmamak gerekiyor galiba

This commit is contained in:
Eray Özkural
2005-06-28 12:24:10 +00:00
parent 9b5270be1e
commit b853e9987b
2 changed files with 35 additions and 23 deletions
+28 -17
View File
@@ -7,30 +7,41 @@
# we basically store everything in PackageInfo class
# yes, we are cheap
import bsddb.dbshelve as shelve
from bsddb.dbshelve import DBShelf
import os
import util
from config import config
from bsddb import db
util.check_dir(config.db_dir())
d = shelve.open( os.path.join(config.db_dir(), 'package.bdb') )
class PackageDB(DBShelf):
def clear():
d.clear()
def __init__(self):
DBShelf.__init__(self)
util.check_dir(config.db_dir())
filename = os.path.join(config.db_dir(), 'package.bdb')
#d.open(filename, dbname, filetype, flags, mode)
flags = 0
mode = 0660
filetype=db.DB_HASH
dbname = None
self.open( filename, dbname, filetype, flags, mode )
def has_package(self, name):
name = str(name)
return self.has_key(name)
def has_package(name):
name = str(name)
return d.has_key(name)
def get_package(self, name):
name = str(name)
return self[name]
def get_package(name):
name = str(name)
return d[name]
def add_package(self, package_info):
name = str(package_info.name)
self[name] = package_info
def add_package(package_info):
name = str(package_info.name)
d[name] = package_info
def remove_package(self, name):
name = str(name)
del self[name]
packagedb = PackageDB()
def remove_package(name):
name = str(name)
del d[name]
+7 -6
View File
@@ -2,22 +2,23 @@
import unittest
import os
from pisi import packagedb
from pisi.packagedb import packagedb
from pisi import util
from pisi import context
class PackageDBTestCase(unittest.TestCase):
def setUp(self):
self.ctx = context.BuildContext("samples/popt/popt.pspec")
self.ctx = context.BuildContext('samples/popt/popt.pspec')
def testAdd(self):
packagedb.add_package("testpackagedb", self.ctx.spec.packages[0])
self.assert_(packagedb.has_package("testpackagedb"))
packagedb.add_package(self.ctx.spec.packages[0])
self.assert_(packagedb.has_package('popt-libs'))
def testRemove(self):
self.testAdd()
packagedb.remove_package("testpackagedb")
self.assert_(not packagedb.has_package("testpackagedb"))
packagedb.remove_package('popt-libs')
self.assert_(not packagedb.has_package('popt-libs'))
suite = unittest.makeSuite(PackageDBTestCase)