Author: jmorliaguet Date: Thu Mar 23 23:58:45 2006 New Revision: 2708 Modified: cpsskins/branches/jmo-perspectives/ftests/test_appsetup.py cpsskins/branches/jmo-perspectives/setup/README.txt Log:
- more tests to load settings from the filesystem Modified: cpsskins/branches/jmo-perspectives/ftests/test_appsetup.py ============================================================================== --- cpsskins/branches/jmo-perspectives/ftests/test_appsetup.py (original) +++ cpsskins/branches/jmo-perspectives/ftests/test_appsetup.py Thu Mar 23 23:58:45 2006 @@ -19,11 +19,30 @@ import unittest +import cpsskins.setup.test + +from zope.app.testing import ztapi from zope.app.testing.functional import FunctionalDocFileSuite +from zope.interface import alsoProvides +from zope.component import provideUtility +from zope.component.interfaces import IFactory + +from cpsskins.io.interfaces import IDataImporter +from cpsskins.setup.interfaces import IResourceType +from cpsskins.setup.test.dummy import IDummyResource, DummyResourceImporter +from cpsskins.setup.test.dummy import DummyFactory + +def setUp(test): + # export adapter + ztapi.provideAdapter(IDummyResource, IDataImporter, DummyResourceImporter) + + # register the setting + provideUtility(DummyFactory, IFactory, 'dummy') + alsoProvides(IDummyResource, IResourceType) def test_suite(): return unittest.TestSuite(( - FunctionalDocFileSuite('../setup/README.txt'), + FunctionalDocFileSuite('../setup/README.txt', setUp=setUp), )) if __name__ == '__main__': Modified: cpsskins/branches/jmo-perspectives/setup/README.txt ============================================================================== --- cpsskins/branches/jmo-perspectives/setup/README.txt (original) +++ cpsskins/branches/jmo-perspectives/setup/README.txt Thu Mar 23 23:58:45 2006 @@ -37,6 +37,8 @@ >>> from cpsskins.setup.interfaces import IResourceManager, ISettings >>> from cpsskins.setup.manager import ResourceManager + >>> from cpsskins.setup.test.dummy import IDummyResource, DummyResource + >>> from cpsskins.tests.setup import addThemeManager >>> root = getRootFolder() @@ -44,19 +46,6 @@ >>> ztapi.provideUtility(IResourceManager, ResourceManager()) - >>> class IDummyResource(Interface): - ... """Dummy resource interface""" - - >>> class DummyResource(object): - ... """A dummy resource for testing. - ... """ - ... implements(IDummyResource) - ... def __init__(self, title=u''): - ... self.title = title - ... def setTitle(self, title=u''): - ... self.title = title - ... def __repr__(self): - ... return '<Dummy resource: %s>' % self.title We create a couple of resources: @@ -243,3 +232,22 @@ >>> resources.lookup(u'resource1') <Dummy resource: resource1> + +Registering resources from the filesystem +----------------------------------------- + +Global resources are stored on the filesystem, they can be defined in python: + + >>> from cpsskins.setup.registration import register, loadSettings + + >>> register('cpsskins.setup.test', 'resource4.xml') + >>> dummyevent = object() + >>> loadSettings(dummyevent) + + >>> pprint(resources.list(type=IDummyResource)) + [<Dummy resource: resource1>, + <Dummy resource: Dummy resource 4>, + <Dummy resource: resource2>] + + >>> resources.lookup(u'resource4') + <Dummy resource: Dummy resource 4>, -- http://lists.nuxeo.com/mailman/listinfo/z3lab-checkins