work in progress: storage.folder implementation
This commit is contained in:
parent
90da2aafcd
commit
1280f8b15a
3 changed files with 34 additions and 2 deletions
|
@ -15,4 +15,5 @@ def run(app, config):
|
||||||
if __name__ == '__main__':
|
if __name__ == '__main__':
|
||||||
import config
|
import config
|
||||||
run(config.app, config)
|
run(config.app, config)
|
||||||
|
#run(config.app_factory(), config)
|
||||||
|
# see zope.app.wsgi.getWSGIApplication
|
||||||
|
|
28
scopes/storage/folder.py
Normal file
28
scopes/storage/folder.py
Normal file
|
@ -0,0 +1,28 @@
|
||||||
|
# scopes.storage.folder
|
||||||
|
|
||||||
|
from scopes.storage.common import registerContainerClass
|
||||||
|
from scopes.storage.tracking import Container, Track
|
||||||
|
|
||||||
|
|
||||||
|
class Folder(Track):
|
||||||
|
|
||||||
|
headFields = ['parent', 'name']
|
||||||
|
prefix = 'fldr'
|
||||||
|
|
||||||
|
def keys(self):
|
||||||
|
return []
|
||||||
|
|
||||||
|
def get(self, key, default=None):
|
||||||
|
return default
|
||||||
|
|
||||||
|
def __getitem__(self, key):
|
||||||
|
raise KeyError
|
||||||
|
|
||||||
|
|
||||||
|
@registerContainerClass
|
||||||
|
class Folders(Container):
|
||||||
|
|
||||||
|
itemFactory = Folder
|
||||||
|
indexes = [('parent', 'name')]
|
||||||
|
tableName = 'folders'
|
||||||
|
insertOnChange = False
|
|
@ -9,7 +9,7 @@ import unittest
|
||||||
import scopes.storage.common
|
import scopes.storage.common
|
||||||
from scopes.storage.common import Storage, getEngine, sessionFactory
|
from scopes.storage.common import Storage, getEngine, sessionFactory
|
||||||
from scopes.storage import proxy
|
from scopes.storage import proxy
|
||||||
from scopes.storage import tracking
|
from scopes.storage import folder, tracking
|
||||||
|
|
||||||
import config
|
import config
|
||||||
engine = getEngine(config.dbengine, config.dbname, config.dbuser, config.dbpassword)
|
engine = getEngine(config.dbengine, config.dbname, config.dbuser, config.dbpassword)
|
||||||
|
@ -70,6 +70,9 @@ class Test(unittest.TestCase):
|
||||||
|
|
||||||
transaction.commit()
|
transaction.commit()
|
||||||
|
|
||||||
|
def testFolder(self):
|
||||||
|
storage.dropTable('folders')
|
||||||
|
folders = storage.create(folder.Folders)
|
||||||
|
|
||||||
def suite():
|
def suite():
|
||||||
return unittest.TestSuite((
|
return unittest.TestSuite((
|
||||||
|
|
Loading…
Add table
Reference in a new issue