[Checkins] SVN: Sandbox/darrylcousins/mars.form/ Updates to get
this old code working again
Darryl Cousins
darryl at darrylcousins.net.nz
Sat Feb 9 21:15:14 EST 2008
Log message for revision 83683:
Updates to get this old code working again
Changed:
U Sandbox/darrylcousins/mars.form/buildout.cfg
U Sandbox/darrylcousins/mars.form/setup.py
U Sandbox/darrylcousins/mars.form/src/mars/form/components.py
U Sandbox/darrylcousins/mars.form/src/mars/form/form.txt
U Sandbox/darrylcousins/mars.form/src/mars/form/ftests/form.py
U Sandbox/darrylcousins/mars.form/src/mars/form/ftests/ftesting.zcml
U Sandbox/darrylcousins/mars.form/src/mars/form/ftests/test_functional.py
U Sandbox/darrylcousins/mars.form/src/mars/form/meta.py
U Sandbox/darrylcousins/mars.form/src/mars/form/tests.py
U Sandbox/darrylcousins/mars.form/src/mars/form/widget.txt
-=-
Modified: Sandbox/darrylcousins/mars.form/buildout.cfg
===================================================================
--- Sandbox/darrylcousins/mars.form/buildout.cfg 2008-02-10 02:14:23 UTC (rev 83682)
+++ Sandbox/darrylcousins/mars.form/buildout.cfg 2008-02-10 02:15:13 UTC (rev 83683)
@@ -1,13 +1,13 @@
[buildout]
develop = .
parts = test
-extends = http://grok.zope.org/releaseinfo/grok-0.11.1.cfg
+extends = http://download.zope.org/zope3.4/versions-3.4.0c1.cfg
versions = versions
[versions]
-martian = 0.9.2
+grok = 0.12dev
+martian = 0.9.3
-
[test]
recipe = zc.recipe.testrunner
eggs = mars.form [test]
Modified: Sandbox/darrylcousins/mars.form/setup.py
===================================================================
--- Sandbox/darrylcousins/mars.form/setup.py 2008-02-10 02:14:23 UTC (rev 83682)
+++ Sandbox/darrylcousins/mars.form/setup.py 2008-02-10 02:15:13 UTC (rev 83683)
@@ -14,15 +14,20 @@
This package uses ``martian`` and ``grok`` to provide registrations using z3c.form
for applications built on the ``zope`` framework.""",
long_description=(
- read('src/mars/form/README.txt') +
+ read('mars/form/README.txt') +
read('CHANGES.txt')),
- packages=find_packages('src'),
- package_dir = {'': 'src'},
- include_package_data = True,
- namespace_packages = ['mars'],
- zip_safe=False,
+ classifiers = ['Development Status :: 1 - Planning',
+ 'Intended Audience :: Developers',
+ 'License :: Other/Proprietary License',
+ 'Programming Language :: Python',
+ 'Operating System :: OS Independent',
+ 'Topic :: Software Development :: Build Tools',
+ 'Framework :: Zope3',
+ ],
+ packages=find_packages(),
+ namespace_packages=['mars'],
+ zip_safe=True,
license='ZPL',
- dependency_links = ['http://download.zope.org/distribution'],
extras_require = dict(
test=['zope.app.testing',
'zope.testbrowser',
Modified: Sandbox/darrylcousins/mars.form/src/mars/form/components.py
===================================================================
--- Sandbox/darrylcousins/mars.form/src/mars/form/components.py 2008-02-10 02:14:23 UTC (rev 83682)
+++ Sandbox/darrylcousins/mars.form/src/mars/form/components.py 2008-02-10 02:15:13 UTC (rev 83683)
@@ -8,16 +8,19 @@
from grok.interfaces import IGrokView
-from mars.layer import ILayer
+import grok
## layers
-class IFormLayer(ILayer, IZ3CFormLayer, IPageletBrowserLayer):
+class IFormLayer(grok.IGrokLayer, IZ3CFormLayer,
+ IPageletBrowserLayer):
pass
-class IDivFormLayer(ILayer, IZ3CDivFormLayer, IZ3CFormLayer, IPageletBrowserLayer):
+class IDivFormLayer(grok.IGrokLayer, IZ3CDivFormLayer, IZ3CFormLayer,
+ IPageletBrowserLayer):
pass
-class ITableFormLayer(ILayer, IZ3CTableFormLayer, IZ3CFormLayer, IPageletBrowserLayer):
+class ITableFormLayer(grok.IGrokLayer, IZ3CTableFormLayer, IZ3CFormLayer,
+ IPageletBrowserLayer):
pass
## a widget template factory
@@ -26,4 +29,4 @@
class FormView(object):
"""Vanilla view to mixin with z3c.form views"""
- zope.interface.implements(IPagelet, IGrokView)
+ zope.interface.implements(IPagelet, grok.interfaces.IGrokView)
Modified: Sandbox/darrylcousins/mars.form/src/mars/form/form.txt
===================================================================
--- Sandbox/darrylcousins/mars.form/src/mars/form/form.txt 2008-02-10 02:14:23 UTC (rev 83682)
+++ Sandbox/darrylcousins/mars.form/src/mars/form/form.txt 2008-02-10 02:15:13 UTC (rev 83683)
@@ -74,12 +74,13 @@
Grok our form and template
>>> from mars.form.meta import FormViewGrokker
- >>> FormViewGrokker().grok('', Add, None, module_info, None)
+ >>> FormViewGrokker().grok('', Add, module_info, config)
True
>>> from mars.template.meta import TemplateFactoryGrokker
- >>> TemplateFactoryGrokker().grok('', Template, None, module_info, None)
+ >>> TemplateFactoryGrokker().grok('', Template, module_info, config)
True
+ >>> config.execute_actions()
>>> view = zope.component.getMultiAdapter((document, request),
... name='add')
@@ -116,8 +117,9 @@
... grok.template(layout)
>>> from mars.template.meta import LayoutFactoryGrokker
- >>> LayoutFactoryGrokker().grok('', Layout, None, module_info, None)
+ >>> LayoutFactoryGrokker().grok('', Layout, module_info, config)
True
+ >>> config.execute_actions()
We need to register the content provider ``pagelet`` before we
can use them. This is usually registered by inclusion of z3c.pagelet in
Modified: Sandbox/darrylcousins/mars.form/src/mars/form/ftests/form.py
===================================================================
--- Sandbox/darrylcousins/mars.form/src/mars/form/ftests/form.py 2008-02-10 02:14:23 UTC (rev 83682)
+++ Sandbox/darrylcousins/mars.form/src/mars/form/ftests/form.py 2008-02-10 02:15:13 UTC (rev 83683)
@@ -1,7 +1,5 @@
"""
- >>> import grok
- >>> grok.grok('mars.form.ftests.form')
>>> root = getRootFolder()
>>> from zope.testbrowser.testing import Browser
@@ -106,9 +104,9 @@
class IMyFormLayer(mars.form.IDivFormLayer):
pass
-mars.layer.layer(IMyFormLayer)
+grok.layer(IMyFormLayer)
-class FormSkin(mars.layer.Skin):
+class FormSkin(grok.Skin):
pass
class Template(mars.template.LayoutFactory):
Modified: Sandbox/darrylcousins/mars.form/src/mars/form/ftests/ftesting.zcml
===================================================================
--- Sandbox/darrylcousins/mars.form/src/mars/form/ftests/ftesting.zcml 2008-02-10 02:14:23 UTC (rev 83682)
+++ Sandbox/darrylcousins/mars.form/src/mars/form/ftests/ftesting.zcml 2008-02-10 02:15:13 UTC (rev 83683)
@@ -1,16 +1,8 @@
<configure xmlns="http://namespaces.zope.org/zope"
- xmlns:meta="http://namespaces.zope.org/meta"
- xmlns:browser="http://namespaces.zope.org/browser"
+ xmlns:grok="http://namespaces.zope.org/grok"
i18n_domain="zope"
package="mars.form.ftests">
- <include package="grok" file="meta.zcml" />
- <include package="mars.template" file="meta.zcml" />
- <include package="mars.layer" file="meta.zcml" />
- <include package="mars.view" file="meta.zcml" />
- <include package="mars.adapter" file="meta.zcml" />
- <include package="mars.form" file="meta.zcml" />
-
<include package="grok" />
<include package="zope.contentprovider" />
@@ -24,5 +16,35 @@
<include package="z3c.formui" />
<include package="z3c.pagelet" />
+ <include package="mars.template" file="meta.zcml" />
+ <include package="mars.view" file="meta.zcml" />
+ <include package="mars.adapter" file="meta.zcml" />
+ <include package="mars.form" file="meta.zcml" />
+ <grok:grok package="mars.form.ftests" />
+
+ <securityPolicy
+ component="zope.securitypolicy.zopepolicy.ZopeSecurityPolicy"
+ />
+
+ <unauthenticatedPrincipal
+ id="zope.anybody"
+ title="Unauthenticated User"
+ />
+ <grant
+ permission="zope.View"
+ principal="zope.anybody"
+ />
+
+ <principal
+ id="zope.mgr"
+ title="Manager"
+ login="mgr"
+ password="mgrpw"
+ />
+
+ <role id="zope.Manager" title="Site Manager" />
+ <grantAll role="zope.Manager" />
+ <grant role="zope.Manager" principal="zope.mgr" />
+
</configure>
Modified: Sandbox/darrylcousins/mars.form/src/mars/form/ftests/test_functional.py
===================================================================
--- Sandbox/darrylcousins/mars.form/src/mars/form/ftests/test_functional.py 2008-02-10 02:14:23 UTC (rev 83682)
+++ Sandbox/darrylcousins/mars.form/src/mars/form/ftests/test_functional.py 2008-02-10 02:15:13 UTC (rev 83683)
@@ -1,10 +1,15 @@
+import os
import unittest
-from zope.testing import doctest
+from zope.testing import doctest
from zope.app.testing.functional import FunctionalTestSetup, getRootFolder
from zope.app.testing import functional
-functional.defineLayer('TestLayer', 'ftesting.zcml')
+ftesting_zcml = os.path.join(os.path.dirname(__file__), 'ftesting.zcml')
+TestLayer = functional.ZCMLLayer(
+ ftesting_zcml, __name__, 'TestLayer')
+
+
optionflags = doctest.NORMALIZE_WHITESPACE + doctest.ELLIPSIS
globs = dict(getRootFolder=getRootFolder)
@@ -19,14 +24,8 @@
dottedname = 'mars.form.ftests.%s'
for name in ['form']:
test = doctest.DocTestSuite(
- dottedname % name, setUp=setUp, globs=globs,
+ dottedname % name, setUp=setUp, extraglobs=globs,
tearDown=tearDown, optionflags=optionflags)
test.layer = TestLayer
suite.addTest(test)
return suite
-
-if __name__ == '__main__':
- unittest.main(defaultTest='test_suite')
-
-
-
Modified: Sandbox/darrylcousins/mars.form/src/mars/form/meta.py
===================================================================
--- Sandbox/darrylcousins/mars.form/src/mars/form/meta.py 2008-02-10 02:14:23 UTC (rev 83682)
+++ Sandbox/darrylcousins/mars.form/src/mars/form/meta.py 2008-02-10 02:15:13 UTC (rev 83683)
@@ -16,7 +16,7 @@
from martian.error import GrokError
import grok
-from grok.util import check_adapts
+from grok.util import determine_class_directive
import mars.form
import mars.template
@@ -26,23 +26,27 @@
class FormViewGrokker(ViewGrokkerBase):
component_class = mars.form.FormView
- def register(self, factory, module_info):
+ def register(self, factory, config):
- # is name defined for layout?
# if defined a named template is looked up
factory._layout_name = util.class_annotation(factory, 'mars.view.layout', '')
- zope.component.provideAdapter(factory,
- adapts=(self.view_context, self.view_layer),
- provides=self.provides,
- name=self.view_name)
+ adapts = (self.view_context, self.view_layer)
+ config.action(
+ discriminator=('adapter', adapts, self.provides, self.view_name),
+ callable=zope.component.provideAdapter,
+ args=(factory, adapts, self.provides, self.view_name),
+ )
class WidgetTemplateFactoryGrokker(martian.ClassGrokker):
component_class = mars.form.WidgetTemplateFactory
provides = IPageTemplate
- def grok(self, name, factory, context, module_info, templates):
- view_context = util.determine_class_context(factory, context)
+ def grok(self, name, factory, module_info, config, *kws):
+
+ view_context = determine_class_directive('grok.context',
+ factory, module_info,
+ default=zope.interface.Interface)
factory.module_info = module_info
factory_name = factory.__name__.lower()
@@ -77,9 +81,13 @@
#print '\nname:', mode,'context:', view_context,'factory:',\
# factory, 'provides', provides, 'view:', view, 'field:', field, \
# 'widget:', widget, '\n'
- zope.component.provideAdapter(factory,
- adapts=(view_context, view_layer, view, field, widget),
- provides=provides,
- name=mode)
+
+ adapts = (view_context, view_layer, view, field, widget)
+ config.action(
+ discriminator=('adapter', adapts, self.provides, mode),
+ callable=zope.component.provideAdapter,
+ args=(factory, adapts, self.provides, mode),
+ )
+
return True
Modified: Sandbox/darrylcousins/mars.form/src/mars/form/tests.py
===================================================================
--- Sandbox/darrylcousins/mars.form/src/mars/form/tests.py 2008-02-10 02:14:23 UTC (rev 83682)
+++ Sandbox/darrylcousins/mars.form/src/mars/form/tests.py 2008-02-10 02:15:13 UTC (rev 83683)
@@ -1,7 +1,9 @@
import unittest
+
from zope.testing import doctest
from zope.app.testing import setup
import zope.interface
+from zope.configuration.config import ConfigurationMachine
from martian.interfaces import IModuleInfo
@@ -14,13 +16,16 @@
return default
from zope.app.testing import setup
-globs = dict(module_info=ModuleInfo(), root=setup.placefulSetUp(True))
+globs = dict(module_info=ModuleInfo(),
+ root=setup.placefulSetUp(True),
+ config=ConfigurationMachine())
optionflags = doctest.NORMALIZE_WHITESPACE + doctest.ELLIPSIS
def setUp(test):
from z3c.form import testing
testing.setupFormDefaults()
+
# register provider TALES
from zope.app.pagetemplate import metaconfigure
from zope.contentprovider import tales
Modified: Sandbox/darrylcousins/mars.form/src/mars/form/widget.txt
===================================================================
--- Sandbox/darrylcousins/mars.form/src/mars/form/widget.txt 2008-02-10 02:14:23 UTC (rev 83682)
+++ Sandbox/darrylcousins/mars.form/src/mars/form/widget.txt 2008-02-10 02:15:13 UTC (rev 83683)
@@ -1,8 +1,8 @@
Widget Template Factory
=======================
-The widget template factory seeks to provide a way to define and register using
-``martian`` widget templates.
+The widget template factory seeks to provide a way to define and register widget
+templates using ``martian``
First lets create a simple widget to use in the tests.
@@ -43,15 +43,15 @@
>>> import mars.form
>>> class AgeWidgetTemplateFactory(mars.form.WidgetTemplateFactory):
... grok.name(INPUT_MODE)
- ... grok.context(zope.interface.Interface)
... grok.template(template)
We need to ``grok`` the template.
>>> from mars.form.meta import WidgetTemplateFactoryGrokker
- >>> WidgetTemplateFactoryGrokker().grok('', AgeWidgetTemplateFactory,
- ... zope.interface.Interface, module_info, None)
+ >>> WidgetTemplateFactoryGrokker().grok('', AgeWidgetTemplateFactory,
+ ... module_info, config)
True
+ >>> config.execute_actions()
Render the widget
-----------------
More information about the Checkins
mailing list