本文整理汇总了Python中zope.configuration.xmlconfig.xmlconfig函数的典型用法代码示例。如果您正苦于以下问题:Python xmlconfig函数的具体用法?Python xmlconfig怎么用?Python xmlconfig使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了xmlconfig函数的11个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: testAllow
def testAllow(self):
f = configfile("""
<content class="zope.app.component.tests.exampleclass.ExampleClass">
<allow attributes="anAttribute anotherAttribute" />
</content>
""")
xmlconfig(f)
示例2: testMimic
def testMimic(self):
f = configfile("""
<content class="zope.app.component.tests.exampleclass.ExampleClass">
<require like_class="zope.app.component.tests.exampleclass.ExampleClass" />
</content>
""")
xmlconfig(f)
示例3: testI18nResource
def testI18nResource(self):
self.assertEqual(component.queryAdapter(request, name='test'), None)
path1 = os.path.join(tests_path, 'testfiles', 'test.pt')
path2 = os.path.join(tests_path, 'testfiles', 'test2.pt')
xmlconfig(StringIO(template % (
'''
<browser:i18n-resource name="test" defaultLanguage="fr">
<browser:translation language="en" file="%s" />
<browser:translation language="fr" file="%s" />
</browser:i18n-resource>
''' % (path1, path2)
)))
v = component.getAdapter(request, name='test')
self.assertEqual(
component.queryAdapter(request, name='test').__class__,
I18nFileResource)
self.assertEqual(v._testData('en'), open(path1, 'rb').read())
self.assertEqual(v._testData('fr'), open(path2, 'rb').read())
# translation must be provided for the default language
config = StringIO(template % (
'''
<browser:i18n-resource name="test" defaultLanguage="fr">
<browser:translation language="en" file="%s" />
<browser:translation language="lt" file="%s" />
</browser:i18n-resource>
''' % (path1, path2)
))
self.assertRaises(ConfigurationError, xmlconfig, config)
示例4: testDirectory
def testDirectory(self):
path = os.path.join(tests_path, 'testfiles', 'subdir')
self.assertEqual(component.queryAdapter(request, name='dir'), None)
xmlconfig(StringIO(template %
'''
<browser:resourceDirectory
name="dir"
directory="%s"
/>
''' % path
))
r = component.getAdapter(request, name='dir')
self.assertTrue(isinstance(r, DirectoryResource))
r = ProxyFactory(r)
self.assertEqual(r.__name__, "dir")
# Make sure we can access available attrs and not others
for n in ('publishTraverse', 'browserDefault', 'request', '__call__',
'get', '__getitem__'):
getattr(r, n)
self.assertRaises(Exception, getattr, r, 'directory_factory')
inexistent_dir = StringIO(template %
'''
<browser:resourceDirectory
name="dir"
directory="does-not-exist"
/>
''')
self.assertRaises(ConfigurationError, xmlconfig, inexistent_dir)
示例5: testPluggableFactory
def testPluggableFactory(self):
class ImageResource(object):
def __init__(self, image, request):
pass
class ImageResourceFactory(object):
def __init__(self, path, checker, name):
pass
def __call__(self, request):
return ImageResource(None, request)
from zope.browserresource.interfaces import IResourceFactoryFactory
component.provideUtility(ImageResourceFactory, IResourceFactoryFactory,
name='gif')
xmlconfig(StringIO(template %
'''
<browser:resource
name="test.gif"
file="%s"
/>
''' % os.path.join(tests_path, 'testfiles', 'test.gif')
))
r = component.getAdapter(request, name='test.gif')
self.assertTrue(isinstance(r, ImageResource))
示例6: demo_multiadapters
def demo_multiadapters(load_zcml):
print "=====[ Demo multi adapters ]======="
if load_zcml:
from zope.configuration.xmlconfig import xmlconfig
fname = __file__[:-3] + '.zcml'
xmlconfig(open(fname))
else:
register()
img = me.Image()
page = me.Page()
multi_page = me.MultiPageDocument()
left_column = PortletManagerLeftColumn('left')
print list(left_column.get_portlets(img))
#[(u'generic portlet', <GenericPortlet on left for <__main__.Image object at 0x177fdd0>>),
# (u'image portlet', <ImagePortlet on left for <__main__.Image object at 0x177fdd0>>)]
gsm = getGlobalSiteManager()
gsm.registerAdapter(me.PagePortlet,
(me.IPortletManager, me.Page),
name="page portlet")
print list(left_column.get_portlets(page))
# [(u'generic portlet', <GenericPortlet on left for <__main__.Page object at 0x2652e10>>),
# (u'page portlet', <PagePortlet on left for <__main__.Page object at 0x2652e10>>)]
print list(left_column.get_portlets(multi_page))
# [(u'generic portlet', <GenericPortlet on left for <__main__.MultiPageDocument object at 0x2652e50>>),
# (u'page portlet', <PagePortlet on left for <__main__.MultiPageDocument object at 0x2652e50>>)]
print list(left_column.get_portlets(img))
示例7: testAllow
def testAllow(self):
f = configfile("""
<class class="zope.security.tests.exampleclass.ExampleClass">
<allow attributes="anAttribute anotherAttribute" />
</class>
""")
xmlconfig(f)
示例8: testMimic
def testMimic(self):
f = configfile("""
<class class="zope.security.tests.exampleclass.ExampleClass">
<require like_class="zope.security.tests.exampleclass.ExampleClass" />
</class>
""")
xmlconfig(f)
示例9: demo_events
def demo_events(load_zcml):
gsm = getGlobalSiteManager()
if load_zcml:
from zope.configuration.xmlconfig import xmlconfig
fname = __file__[:-3] + '.zcml'
xmlconfig(open(fname))
else:
gsm.registerHandler(me.handle_some_event)
gsm.registerHandler(me.handle_object_modified_event,
[me.IData, me.IObjectModifiedEvent])
obj = me.Data()
evt = me.SomeEvent()
evt.object = obj
if load_zcml:
notify(evt)
else:
handle(evt)
assert obj.data == 'changed'
obj.data = 'unchanged'
if load_zcml:
notify(me.ObjectModifiedEvent(obj))
else:
objectEventNotify(me.ObjectModifiedEvent(obj))
assert obj.data == 'changed'
print "Done"
示例10: testMenuOverride
def testMenuOverride(self):
self.assertEqual(
component.queryMultiAdapter((ob, request), name='test'),
None)
xmlconfig(StringIO(template % (
'''
<browser:menu
id="test_menu" title="Test menu" />
<browser:menuItem
action="@@test"
for="zope.component.testfiles.views.IC"
permission="zope.Public"
menu="test_menu"
title="Test View"
/>
'''
)))
menu1 = component.getUtility(IBrowserMenu, 'test_menu')
menuItem1 = getFirstMenuItem('test_menu', ob, TestRequest())
xmlconfig(StringIO(template % (
'''
<browser:menu
id="test_menu" title="Test menu"
class="zope.browsermenu.tests.test_directives.M1" />
'''
)))
menu2 = component.getUtility(IBrowserMenu, 'test_menu')
menuItem2 = getFirstMenuItem('test_menu', ob, TestRequest())
self.assertNotEqual(menu1, menu2)
self.assertEqual(menuItem1, menuItem2)
示例11: testDefaultViewWithLayer
def testDefaultViewWithLayer(self):
class FakeRequest(TestRequest):
implements(ITestLayer)
request2 = FakeRequest()
self.assertEqual(
component.queryMultiAdapter((ob, request2), IDefaultViewName),
None)
xmlconfig(StringIO(template % (
'''
<browser:defaultView
for="zope.publisher.tests.test_zcml.IOb"
name="test"
/>
<browser:defaultView
for="zope.publisher.tests.test_zcml.IOb"
layer="zope.publisher.tests.test_zcml.ITestLayer"
name="test2"
/>
'''
)))
self.assertEqual(
zope.publisher.defaultview.getDefaultViewName(ob, request2),
'test2')
self.assertEqual(
zope.publisher.defaultview.getDefaultViewName(ob, request),
'test')